【发布时间】:2011-12-04 15:14:28
【问题描述】:
已经制作了很好的备份脚本:制作备份 zip 文件,然后通过 ftp 将其上传到另一台服务器。它位于:/home/www/web5/backup/backup
然后我决定把这个脚本放到 crontab 中自动完成。 我正在做(以 root 身份)
crontab -e
在我输入的空白行上:
*/1 * * * * /home/www/web5/backup/backup
Escape key, :wq!, Enter
我将其设置为每分钟完成一次以对其进行测试。 然后转到 FTP 文件夹,脚本将文件上传到该文件夹。我在等待,但什么也没有发生:我的 Total Commander 每次刷新后目录都是空的。
但是当我手动执行/home/www/web5/backup/backup 时(也以 root 身份),它工作得很好,我在 FTP 上看到了新文件。
怎么了?这个服务器是一种遗产,所以我可能并不知道它的一切。先去哪里查?操作系统是
Linux s090 2.6.18.8-0.13-default
(一种非常古老的 CentOS)。 感谢您的帮助!
UPD:/home/www/web5/backup/backup 具有 chmod 777
UPD2:/var/log/cron 不存在。但是/var/log/目录存在,里面有apache、mail等的日志。
【问题讨论】:
-
当我遇到这样的问题时,通常是因为某些环境变量(例如,
PATH)在 cron 下与交互式 shell 下不同。如果您的 cron 没有通过电子邮件将日志发送到 root,请尝试附加2>&1 >/tmp/backup.log,以便您可以看到脚本的任何输出/错误。 -
日志应该出现在 /var/log/syslog 之类的。