Cronjob cron.daily不运行(debian)

时间:2013-02-01 13:33:14

标签: cron debian

我有一个脚本可以随时每天运行。所以/etc/cron.daily似乎是一个简单的解决方案。

但是现在我遇到了问题,cronjob不会运行该脚本。似乎cronjob不会运行任何日常工作。

所以我试着把它放到cron.hourly,一切正常。 但我不想每小时运行一次备份脚本。

/etc/init.d/cron start|stop无错误地工作。

/etc/crontab看起来像默认:

 m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report     /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

由于它不会运行,我尝试安装anacron但没有任何更改。

为什么它运行每小时脚本但不运行每日脚本?

非常感谢你们所有人!

6 个答案:

答案 0 :(得分:4)

你安装了anacron吗?

# dpkg --get-selections | grep anacron

如果是,则不会运行每日,每周和每月脚本。

答案 1 :(得分:3)

可能是,你的一个日常脚本行为不端。尝试手动运行它们。我删除了logwatch包和cron.daily工作,然后又恢复了工作。

这是我的/ etc / crontab

# /etc/crontab: system-wide crontab

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

# m h dom mon dow user  command
16 * * * * root cd / && run-parts --report /etc/cron.hourly
12 2 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
41 1 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
9 3 30 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

尝试像这样运行每日

 run-parts -v --report /etc/cron.daily

你也可以使用--list或--test来获得更多输出。在我的情况下,我删除了行为不端的脚本,并且日常工作再次起作用

答案 2 :(得分:2)

运行部件的联机帮助页:

如果既未给出--lsbsysinit选项也未给出--regex选项,则名称必须完全由ASCII大写和小写字母,ASCII数字,ASCII下划线和ASCII减号连字符组成。

我认为它不喜欢你的脚本名称。例如,它不喜欢扩展名“.sh”,因为不允许使用点。

答案 3 :(得分:2)

我在/etc/cron.daily中的一个脚本遇到了同样的问题 脚本的名称是backupBugzilla.sh

将脚本重命名为backupBugzilla后,它可以正常工作。

答案 4 :(得分:2)

我遇到了这个问题,原因是/etc/cron.daily中我的脚本所有者不是root用户。将root设为/etc/cron.daily

中所有脚本的所有者
sudo chown root /etc/cron.daily/*

另外,请确保脚本是可执行的:

sudo chmod +x /etc/cron.daily/*

答案 5 :(得分:1)

我有一个小孩不能开始/etc/init.d/anacron

我的解决方案:

edit /etc/init.d/anacron

必需 - 开始:$ all

保存并运行:

update-rc.d /etc/init.d/anacron defaults

当喘息开始时,

现在运作良好。