cron에서 실행되는 rsync 명령이 실패하는 이유와 디버깅 및 수정 방법은 무엇입니까?
unset SSH_AUTH_SOCK && unset KRB5CCNAME && rsync -hvru -e "ssh -p 34503 -i /root/.ssh/id_rsa_rsyncBACKUP" --progress /home/kristjan/* [email protected]:/BACKUP/Backup/Kundrum/ >> /home/kristjan/logs/rsyncCRON.log
$crontab -l
# Edit this file to introduce tasks to be run by cron.
# m h dom mon dow command
0 5 * * 1 /home/kristjan/bin/checkSystem
00 02 * * * unset SSH_AUTH_SOCK && unset KRB5CCNAME && rsync -hvru -e "ssh -p 34503 -i /root/.ssh/id_rsa_rsyncBACKUP" --progress /home/kristjan/* [email protected]:/BACKUP/Backup/Kundrum/ >> /home/kristjan/logs/rsyncCRON.log
15 23 * * 7 /home/kristjan/bin/unhideCheckSystem
오류는 다음과 같습니다(이메일로 받은 내용).
ssh: connect to host 192.168.1.213 port 34503: No route to host
rsync: connection unexpectedly closed
rsync error: unexplained error (code 255) at io.c (235)
셸에서 직접 명령을 실행하면 명령이 작동합니다.
편집하다:
원격의 ssh 파일에서 = AllowUsers kristjan root
및 cron으로 실행root
편집하다:
이 질문을 게시한 이후로 명령을 변경했는데 이런 식으로 작동하지만 여전히 첫 번째 명령이 작동하지 않는 이유를 알고 싶습니다.
루트 크론의 작업 명령은 다음과 같습니다.
0 5 * * 1 /home/kristjan/bin/checkSystem
00 02 * * * unset SSH_AUTH_SOCK && unset KRB5CCNAME && rsync -hvru -e "ssh -p 34503 -i /root/.ssh/id_rsa_rsyncBACKUP" --progress /home/kristjan/* [email protected]:/BACKUP/Backup/Kundrum/ | mail -s "Backup Home report for `uname -n`" myMailATTgmail.com
중복된 플래그로 인해 편집됨:
이것이 기본적으로 오류를 리디렉션하는 것에 대한 질문이라면(저는 그렇지 않습니다) 원래 질문에 이 줄이 있는 이유는 다음과 같습니다.
The command works if I run it in the shell directly.