Executando o script rsync do cron… não reconhecendo o parâmetro --max-size

3

Este é um truque:

Eu tenho um cron job que executa um script com vários comandos rsync. Por alguma razão, depois que eu adicionei o parâmetro --max-size = 2G a cada comando rsync, os erros do trabalho foram removidos com o seguinte:

++++START+++++++++++++++++++++++++++++++
Tue Mar  9 16:53:00 EST 2010
rsync: --max-size=2G: unknown option
rsync error: syntax or usage error (code 1) at main.c(1023)

real    0m0.018s
user    0m0.011s
sys    0m0.006s
----END FONTS-------------------------------
Tue Mar  9 16:53:00 EST 2010
--------------------------------------

Aqui está o meu cron:

SHELL=/bin/sh
PATH=/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin

#min    hour    mday    month    wday    command
#testing
53 16 * * 2 /Users/admin/Documents/scripts/test_rsync_script > /Users/admin/Documents/logs/$(date +\%y_\%m_\%d__\%H_\%M).log 2>&1

Aqui está o conteúdo de test_rsync_script (eu ofusquei o endereço IP para este post:

echo "++++START+++++++++++++++++++++++++++++++"
date
time rsync --max-size=2G --archive --verbose --update -e ssh /Volumes/RAID/FONTS/ [email protected]:/Volumes/OFFSITE/FONTS --delete 
echo "----END FONTS-------------------------------"
date
echo "--------------------------------------"

Eu testei o comando cron como root na linha de comando e está tudo bem! Há algo de errado com o meu cron? Ele funciona bem se o parâmetro --max-size = 2G não estiver lá.

    
por milesmeow 09.03.2010 / 23:07

1 resposta

2

Você pode ter duas versões diferentes de rsync . O $PATH é diferente em cron do que na linha de comando.

Teste type -a rsync para mostrar os locais dos executáveis. Em seguida, use a designação completa do caminho para a versão correta no seu script.

/path/to/rsync rsync_options ...
    
por 10.03.2010 / 01:24

Tags