Ubuntu 21.10(从 18.04 升级到 20.04 再到 21.04 再到 21.10)
我在 11 月安装了 Ubuntu 来学习该操作系统,今天注意到我的 SSD 很大一部分被单个系统日志文件占据。
/var/log/syslog.1 为 23 GB
/var/log/journal 为 4 GB
我尝试在线寻找解决方案,在一个线程中,一个用户要求打开 syslog 的尾部,以查看是什么原因导致数据溢出到文件中,从而导致文件大小变得如此巨大。
每 6 秒就会将其添加到日志末尾:
IPv6: MLD: clamping QRV from 1 to 2!
我想将 syslog 文件的大小限制为一定大小(比如说 5 GB)。如果需要做更多的事情(例如防止相同的 IPv6 行无休止地添加到文件中),请告知如何做。
我还是个新手用户,所以请耐心等待。
谢谢
答案1
本网站解释如何减少日志文件的大小。虽然是为 Linux Mint 编写的,但也适用于 Ubuntu。
减少 systemd 日志
使用以下命令将 systemd 日志文件的当前大小减小到 50 M
sudo journalctl --vacuum-size=50M
通过编辑使缩减永久生效
/etc/systemd/journald.conf
。以下命令会自动执行该操作。sudo sed -i 's/#SystemMaxFiles=100/SystemMaxFiles=7/g' /etc/systemd/journald.conf
减少其他日志的大小
删除当前日志:
sudo rm -v /var/log/*.log* /var/log/syslog*
然后,您进行修改以
/etc/logrotate.d/rsyslog
仅保留一组以前的存档日志而不是几组,并将轮换频率从每周增加到每天:sudo sed -i 's/rotate 7/rotate 1/g' /etc/logrotate.d/rsyslog
sudo sed -i 's/rotate 4/rotate 1/g' /etc/logrotate.d/rsyslog
sudo sed -i 's/weekly/daily/g' /etc/logrotate.d/rsyslog
也
logrotate
按照类似的目的进行编辑:sudo sed -i 's/rotate 4/rotate 1/g' /etc/logrotate.conf
sudo sed -i 's/weekly/daily/g' /etc/logrotate.conf