logrotate-没有那个文件或目录

logrotate-没有那个文件或目录

每天早上我醒来都会看到 Cron Daemon 发来的这封电子邮件:

/etc/cron.daily/logrotate:
error: error accessing /var/log/ejabberd: No such file or directory
error: ejabberd:1 glob failed for /var/log/ejabberd/*.log
error: found error in /var/log/ejabberd/*.log , skipping

我该如何阻止它?确实没有这样的文件或目录,那么它为什么试图在那里做某事?我很久以前就卸载了 ejabberd。

答案1

在某个时候,ejabberd 必须创建一个 logrotate 文件来轮换其日志。 计划于 执行的每日 logrotate 作业会读取和/etc/cron.daily/logrotate中的任何作业配置文件,并执行其中的指令。 由于没有目录,每日 logrotate 作业会报告输出错误。/etc/logrotate.d/etc/logrotate.conf/var/log/ejabberd

正如所提到的heemayl 的回答任何来自 cron 作业的输出都会以电子邮件的形式发送到变量中的收件人MAILTO

要永久禁用此行为,应停止 ejabberd 的 logrotate 作业。查找/etc/logrotate.dejabberd 文件,使用以下命令将其删除:

sudo rm /etc/logrotate.d/ejabberd

相关内容