Anacron 无法打开文件夹 cron.daily / cron.weekly

Anacron 无法打开文件夹 cron.daily / cron.weekly

最近,我从用户特定的 anacrontab(使用 -t )切换到全局 anacrontab。现在,anacron 每天都会向我发送一条消息(电子邮件给 root),说它无法打开 cron.daily 文件夹:

Subject: Anacron job 'cron.daily' on myComputer
Message: run-parts: failed to open directory /etc/cron.daily: No such file or directory

rsnapshot 作业正常运行,但 cron 相关作业却无法运行。这是我的 anacrontab/etc/anacrontab

# /etc/anacrontab: configuration file for anacron
#
# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/root
LOGNAME=root

# These replace cron's entries
# days to wait - delay in minutes - job-name - command to execute
1   5   cron.daily  run-parts --report /etc/cron.daily
7   10  cron.weekly run-parts --report /etc/cron.weekly
@monthly    15  cron.monthly    run-parts--report /etc/cron.monthly
1   5   rsnapshot.day   /usr/local/bin/doBackup.sh daily
7   30  rsnapshot.week  /usr/local/bin/doBackup.sh weekly

ls -rtl /etc | grep cron这里是查看文件夹权限的输出:

-rw-r--r--  1 root root      722 Jul  3  2012 crontab
drwxr-xr-x  2 root root     4096 Sep 11  2015 cron.hourly
drwxr-xr-x  2 root root     4096 Sep 11  2015 cron.monthly
drwxr-xr-x  2 root root     4096 Sep 11  2015 cron.weekly
drwxr-xr-x  2 root root     4096 Jan 25 16:04 cron.daily
-rw-r--r--  1 root root      858 Mar 21 10:49 anacrontab
drwxr-xr-x  2 root root     4096 Mar 21 10:57 cron.d
drwxr-xr-x 10 root root     4096 Mar 21 10:57 cron-apt

(声誉不足,无法创建标签‘anacron’)

編輯1

附加信息。如果我复制似乎产生消息的行并以 root 身份执行它,则没有问题(我添加了 -v 来查看一些输出,但是没有它也可以正常工作):

root@myComputer:/etc# run-parts -v /etc/cron.daily
run-parts: executing /etc/cron.daily/0anacron
run-parts: executing /etc/cron.daily/apt
run-parts: executing /etc/cron.daily/aptitude
run-parts: executing /etc/cron.daily/bsdmainutils
run-parts: executing /etc/cron.daily/cracklib-runtime
run-parts: executing /etc/cron.daily/dpkg
run-parts: executing /etc/cron.daily/exim4-base
run-parts: executing /etc/cron.daily/logrotate
run-parts: executing /etc/cron.daily/man-db
run-parts: executing /etc/cron.daily/mlocate
run-parts: executing /etc/cron.daily/passwd
run-parts: executing /etc/cron.daily/popularity-contest
root@myComputer:/etc#

編輯2

最后我知道了导致 anacron 出现这种问题的原因。这与 anacrontab 中的行尾有关:

sed -n l anacrontab
# /etc/anacrontab: configuration file for anacron\r$
...

健康的 anacrontab 不应该\r在行尾有(这些是回车符)..实际上我不知道它们是怎么到那里的。

所以这是 anacron 中的一个错误。要么 anacron 应该完全拒绝执行这种格式错误的文件,要么它应该只吃掉回车符并按预期工作。我向 debian 错误跟踪器提交了该错误。可以在此处检查错误的当前状态: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=821081

答案1

您是否尝试过删除除 cron.daily 之外的所有作业,并使用“anacron -T”进行测试?据我所知,您的rsnapshot.day每日计划作业同时运行且延迟相同。这可能会导致访问权限冲突。

相关内容