rsync代码将运行,但不会在cron中运行
我有一个Web服务器(odin)和一个备份服务器(jofur).在jofur上,我可以运行以下代码来将我的web目录(通过密钥认证)从odin转发到jofur:
rsync -avz -e ssh backups@odin.mydomain.net:/home/backups /home/myuser/odin 如果我在命令行输入这个内容,那么rsyncs就完美了: myuser@jofur:~$rsync -avz -e ssh backups@odin.mydomain.net:/home/backups /home/myuser/odin receiving incremental file list sent 23 bytes received 1921 bytes 1296.00 bytes/sec total size is 349557271 speedup is 179813.41 我想让它每天早上运行,所以我编辑了我的crontab来读取这个: 0 4 * * * rsync -avz -e ssh backups@odin.mydomain.net:/home/backups /home/myuser/odin 这不起作用.以下消息存放在/ var / mail / myuser中:
我不确定这个错误意味着什么.我担心盲目地使用权限,因为我不想让任何后门打开.有什么建议? 解决方法
很难判断cron是否使用了错误的rsync二进制文件,或者rsync是否需要一些未在cron中设置的变量.请设置stdout / stderr,如下所示,并传递日志文件的输出
另外,尝试从命令行执行“which rsync”;这将告诉您从命令行使用哪个rsync. 0 4 * * * rsync -avz -e ssh backups@odin.mydomain.net:/home/backups /home/myuser/odin > /tmp/cron_output.log 2>&1 编辑: 您可以创建一个名为SOME_DIR / cron_job_rsync.sh的shell脚本,其中包含以下内容.确保设置执行位. #!/bin/sh /usr/sbin/rsync -avz -e ssh backups@odin.mydomain.net:/home/backups /home/myuser/odin 并修改cronjob,如下所示 0 4 * * * SOME_DIR/cron_job_rsync.sh >/tmp/cron_output.log 2>&1 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |