我有一个在 Raspberry Pi 2 上运行 GNU/Linux 的备用系统。由于各种原因,我必须停止和/或禁用某些应用程序。对于需要重新启动的已停止应用程序,如何跳过 logrotate,例如:samba、httpd:
我收到通过电子邮件发送给我的以下错误。
/etc/cron.daily/logrotate:
Job for smbd.service failed. See 'systemctl status smbd.service' and 'journalctl -xn' for details.
error: error running non-shared postrotate script for /var/log/samba/log.smbd of '/var/log/samba/log.smbd '
run-parts: /etc/cron.daily/logrotate exited with return code 1
如果 smbd 和/或 nmbd 未运行,是否有 postrotate/endscript 方法可以跳过旋转?
答案1
在您的 logrotate 配置文件(或特定的/etc/logrotate.d
子文件)中,您必须有一个如下部分:
/var/log/samba/log.smbd {
...
postrotate
/etc/init.d/smbd reload > /dev/null
endscript
...
}
将 postrotate 命令更改为:
/var/log/samba/log.smbd {
...
postrotate
{ pidof smbd && /etc/init.d/smbd reload; } > /dev/null
endscript
...
}