在Ubuntu系统中,syslog日志轮转是通过rsyslog
服务来实现的。默认情况下,rsyslog
已经配置好了日志轮转。但是,如果你需要自定义日志轮转的设置,可以按照以下步骤操作:
-
打开
rsyslog
配置文件。通常位于/etc/rsyslog.conf
或/etc/rsyslog.d/
目录下。你可以使用文本编辑器打开它,例如:sudo nano /etc/rsyslog.conf
或者
sudo nano /etc/rsyslog.d/50-default.conf
-
在配置文件中找到以下行:
#Rotation of logs #logrotate /etc/logrotate.d/rsyslog
如果你找到了这一行,请取消注释(删除行首的
#
),然后保存并关闭文件。 -
确保
logrotate
配置文件存在。通常位于/etc/logrotate.d/
目录下,名为rsyslog
。如果不存在,请创建一个:sudo touch /etc/logrotate.d/rsyslog sudo nano /etc/logrotate.d/rsyslog
-
在
rsyslog
配置文件中,你可以设置日志轮转的参数。以下是一个示例配置:/var/log/syslog { rotate 7 daily compress delaycompress missingok notifempty create 0640 root adm }
这个配置表示:
- 保留7个轮转日志文件
- 每天轮转一次日志
- 轮转后的日志文件会被压缩
- 延迟压缩,直到下一次轮转
- 如果日志文件丢失,不会报错
- 如果日志文件为空,不进行轮转
- 创建新的日志文件,权限为0640,属主为root,属组为adm
你可以根据自己的需求修改这些参数。
-
保存并关闭
rsyslog
配置文件。 -
重启
rsyslog
服务以应用更改:sudo systemctl restart rsyslog
现在,rsyslog
日志轮转应该已经按照你的配置进行了调整。你可以定期检查/var/log/syslog*
文件以确保日志轮转正常工作。