logrotate 的调度是什么?

logrotate 的调度是什么?

我正在开发一个创建大日志文件的程序。

我想用 logrotate 来处理它。

这是我输入的配置/etc/logrotate.d/

/var/log/myproject.log  {
 hourly
 maxsize 1
 rotate 6
 missingok
 notifempty
 compress
 nocreate
 copytruncate
 su www-data www-data 
}

/var/log/myproject.log有主人www-data

命令

sudo logrotate -vf /etc/logrotate.conf

sudo logrotate -vf /etc/logrotate.d/myproject

正确旋转原木。

但是调用后结果/etc/cron.hourly为空,也就是说 logrotate 不是每小时调用一次。

  1. 我能保证有logrotate脚本吗/etc/cron.daily

  2. 脚本是否检查日志文件的更新频率。即,如果我有logrotate脚本并且我设置了某些/etc/cron.daily日志文件,它将每天或每周轮换?X/etc/logrotate.d/weeklyX

  3. 我可以直接复制粘贴/etc/cron.daily/logrotate到 吗/etc/cron.hourly/?我可以剪切粘贴吗?

  4. 我应该添加0anacron文件到吗/etc/cron.hourly/

  5. 我应该做其他事情来启用每小时日志记录吗?

答案1

  1. 不。

  2. man logrotate

    Each  configuration  file  can  set  global  options (local definitions
    override global ones, and later definitions override earlier ones)
    

    所以,是的。

  3. 再次,从手册页中:

    hourly Log files are rotated every hour. Note that usually logrotate is
           configured  to  be  run  by  cron daily. You have to change this
           configuration and run logrotate hourly  to  be  able  to  really
           rotate logs hourly.
    

    所以,是的,你应该移动脚本。检查cron.daily系统中的脚本后,我认为移动它应该没问题。

相关内容