linux – Cron运行我的脚本但脚本没有做任何事情,与邮件错误有关??? “得到状态0x004b#012”

linux – Cron运行我的脚本但脚本没有做任何事情,与邮件错误有关??? “得到状态0x004b#012”,第1张

概述参见英文答案 > Why is my crontab not working, and how can I troubleshoot it?                                    5个 我管理的一个Ubuntu 10.10 Web服务器有一个非常奇怪的问题. 我使用ruby和rake编写了一个脚本来运行一些tar命令并执行数据库的mysqldump.我在root用户 参见英文答案 > Why is my crontab not working,and how can I troubleshoot it?5个
我管理的一个Ubuntu 10.10 Web服务器有一个非常奇怪的问题.

我使用ruby和rake编写了一个脚本来运行一些tar命令并执行数据库的MysqLdump.我在root用户crontab中安装了一个条目,如下所示:

0 0,12 * * * /bin/bash -l -c 'cd /my/script/path && rake backup:everything'

这在其中一台服务器上运行良好.然而另一方面,这实际上似乎并没有在我的脚本中执行什么.

我知道它被称为明确因为当我跑

grep CRON /var/log/syslog

它返回:

Mar 22 12:00:01 Servername CRON[10273]: (root) CMD (/bin/bash -l -c 'cd /my/script/path && rake backup:everything')

然而,它肯定没有在那个剧本中做什么.

当我像这样直接运行脚本时:

cd /my/script/path && sudo rake backup:everything

它完美地运作.

我也在两台服务器的crontab中执行了此 *** 作:

0 0,12 * * * /bin/bash -l -c 'cd /my/script/path && rake backup:everything >> output.txt'

(就像在脚本中我每隔一段时间“放置’备份x文件夹’”)

在cron作业正在运行的服务器上,它创建output.txt文件并将预期输出放在那里,如“开始备份”等.

但是,在它不工作的服务器上,它只创建文件但保留为空.但是当我再次从syslog复制命令并手动运行时:

sudo /bin/bash -l -c 'cd /my/script/path && rake backup:everything >> output.txt'

它工作正常,输出是预期的.

我现在可能正抓着稻草,但这可能与此有关:

CRON[10271]: (root) MAIL (mailed 55 bytes of output but got status 0x004b#012)

每次调用cron后,它都会显示在syslog中.我只有这个cron工作和另一个小的更新系统时钟,但从它的外观来看,它们都没有正常工作.

是不正确的邮件配置杀了我的cron工作?这有可能吗?

解决方法 您应该在cron行中提供rake的完整路径.就像是:

/ sbin / rake或它实际居住的地方.

如果rake所在的路径不在root用户路径中,则它将无法运行.

如果是邮件,您应该在邮件日志中看到一些内容.检查那里.

总结

以上是内存溢出为你收集整理的linux – Cron运行我的脚本但脚本没有做任何事情,与邮件错误有关??? “得到状态0x004b#012”全部内容,希望文章能够帮你解决linux – Cron运行我的脚本但脚本没有做任何事情,与邮件错误有关??? “得到状态0x004b#012”所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1035530.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存