在进行日志轮换时,我们有两个选择 -
- 在 logrotate 文件中使用 daily 指令 -
/var/log/wtmp {
daily
minsize 1M
create 0664 root utmp
rotate 1
}
- 将 logrotation 文件路径放入
/etc/cron.daily/logrotate
哪种方法是首选方法?每种方法的优缺点是什么?
答案1
/etc/cron.daily/logrotate
和轮换配置文件有不同的用途。
/etc/cron.daily/logrotate
确保logrotate
该工具每天运行一次(如果系统正常运行)。它还确定读取的配置文件/etc/logrotate.conf
。由于后者通常包含 中的文件/etc/logrotate.d
,因此您通常不需要修改它来添加新的配置文件 - 相反,将配置文件添加到/etc/logrotate.d
.
轮换配置文件确定每个托管日志文件会发生什么情况。这在很大程度上与所说的无关/etc/cron.daily/logrotate
;后者添加的主要约束是日志的轮换频率不能高于logrotate
运行频率,因此在默认的每日设置下,日志的轮换频率不能高于每日。
在典型设置中,logrotate
默认设置为每周轮换日志。如果你想改变这一点,改变/etc/cron.daily/logrotate
是没有帮助的;即使您logrotate
每分钟运行一次,它仍然只会每周轮换日志。要更改日志轮换的频率,您需要全局更改轮换配置本身,或者针对要每天轮换的每个日志文件更改轮换配置本身。
因此,您问题的答案是,要每天轮换日志文件,请daily
在轮换配置的相关部分中指定指令。