Ubuntu清理日志的步骤
导读:Ubuntu 清理日志的安全步骤 一 准备与定位日志 检查磁盘占用,确认是否由日志引起: 查看整体空间:df -h 查看目录占用:du -sh /var/log 系统日志默认位于 /var/log,常见文件与用途: /var/lo...
Ubuntu 清理日志的安全步骤
一 准备与定位日志
- 检查磁盘占用,确认是否由日志引起:
- 查看整体空间:
df -h - 查看目录占用:
du -sh /var/log
- 查看整体空间:
- 系统日志默认位于 /var/log,常见文件与用途:
- /var/log/syslog:系统综合日志
- /var/log/auth.log:认证与登录日志
- /var/log/kern.log:内核日志
- /var/log/dmesg:内核启动信息
- 服务日志如 /var/log/apache2/、/var/log/mysql/ 等
- 建议先备份关键日志(可选):
sudo cp /var/log/syslog ~/backup/syslog-$(date +%F)。
二 清理 systemd 日志 journal
- 推荐先执行日志轮转,再按时间或大小清理,避免直接删除正在写入的活跃文件:
- 轮转当前日志:
sudo journalctl --rotate - 仅保留最近 7 天:
sudo journalctl --vacuum-time=7d - 仅保留最近 100MB:
sudo journalctl --vacuum-size=100M - 如需快速释放空间(会清空全部 journal):
sudo journalctl --vacuum-size=0
- 轮转当前日志:
- 说明:journal 日志通常位于 /run/log/journal/(持久化在 /var/log/journal/,如启用持久化)。清理后可用
journalctl --disk-usage查看占用。
三 清理 /var/log 下的传统日志文件
- 清空而不删除日志文件(更安全,保持文件句柄与权限):
- 示例:
sudo truncate -s 0 /var/log/syslog - 其他常用:
sudo truncate -s 0 /var/log/auth.log /var/log/kern.log
- 示例:
- 删除已轮转的旧日志(如 .1、.gz 等归档):
- 示例:
sudo rm -f /var/log/syslog.1 /var/log/auth.log.1 /var/log/*.gz
- 示例:
- 谨慎操作:不要直接删除正在写入的主日志文件(如直接
rm /var/log/syslog),以免导致日志服务异常;清空或删除归档更稳妥。
四 配置自动轮转与长期治理
- 编辑或新增配置(如 /etc/logrotate.d/rsyslog),示例策略:
- 每天轮转、保留 7 天、压缩归档、缺失不报错、空文件不轮转、按指定权限重建:
/var/log/syslog { daily rotate 7 compress delaycompress missingok notifempty create 0640 root adm } /var/log/auth.log { daily rotate 7 compress delaycompress missingok notifempty create 0640 root adm }
- 每天轮转、保留 7 天、压缩归档、缺失不报错、空文件不轮转、按指定权限重建:
- 手动触发一次轮转测试:
sudo logrotate -f /etc/logrotate.conf - 如需按大小触发,可在对应段加入
size 100M等条件,实现“大小或时间”双阈值治理。
五 注意事项与验证
- 清理前确认无关键故障排查在进行;必要时先备份重要日志。
- 清理后重启相关服务或系统以恢复正常写入(如
sudo systemctl restart rsyslog)。 - 再次检查空间释放效果:
df -h、du -sh /var/log,并观察关键服务日志是否正常生成。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu清理日志的步骤
本文地址: https://pptw.com/jishu/778189.html
