![为什么每日 cron 没有在 CentOS 6 上运行?](https://linux22.com/image/53447/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%AF%8F%E6%97%A5%20cron%20%E6%B2%A1%E6%9C%89%E5%9C%A8%20CentOS%206%20%E4%B8%8A%E8%BF%90%E8%A1%8C%EF%BC%9F%20.png)
我在 CentOS 6 操作系统上设置了一个每日 cronjob,它应该负责日志轮换作业。该文件是 /etc/cron.daily/logrotate ,其内容是
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf >/dev/null 2>&1
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0
我预计日志将在被每日 cronjob 激活时轮换,但事实并非如此。我没有看到任何证据表明每日 cronjob 是从日志文件 /var/log/cron 运行的。但是,每小时作业的运行情况如日志文件所示。
我在 /etc/crontab 文件中添加了一行
# run-parts
02 4 * * * root run-parts /etc/cron.daily
但这并没有改变。
我不知道为什么这个日志轮换不起作用。如果有人能提供一些线索,我会很高兴。
答案1
尝试logrotate
手动执行您的流程:
logrotate -v -f /etc/logrotate.conf
如果出现错误,请手动修复它们。
例如,可能没有更多空间可用于压缩日志并旋转它(在这种情况下,删除一些日志),ecc。