上一篇
最新动态(2025年8月)
近期某云服务商因日志爆仓导致服务瘫痪,再次提醒运维人员:定期清理日志不仅是空间管理,更是安全刚需!🚨
Linux系统日志(如/var/log/
下的文件)会随时间膨胀,导致:
No space left on device
) # 清空单个日志文件(保留文件属性) sudo > /var/log/syslog # 或使用truncate sudo truncate -s 0 /var/log/kern.log
✅ 适用场景:快速释放空间,需手动操作
logrotate
自动管理# 编辑配置(示例为nginx日志) sudo nano /etc/logrotate.d/nginx # 添加以下规则: /var/log/nginx/*.log { daily rotate 7 compress missingok notifempty create 0640 www-data adm } # 手动立即执行 sudo logrotate -vf /etc/logrotate.d/nginx
✅ 优势:自动化、支持压缩和按时间保留
journalctl
清理系统日志# 查看当前日志占用空间 journalctl --disk-usage # 清理7天前的日志 sudo journalctl --vacuum-time=7d # 或限制总大小 sudo journalctl --vacuum-size=500M
📌 注意:适用于systemd
系统的日志(CentOS 7+/Ubuntu 16.04+)
# 每天凌晨清理旧日志 sudo crontab -e # 添加一行: 0 0 * * * find /var/log -type f -name "*.log" -mtime +30 -exec truncate -s 0 {} \;
💡 小技巧:先用find
命令测试匹配文件,避免误删!
ncdu
分析+清理# 安装空间分析工具 sudo apt install ncdu # Debian/Ubuntu sudo yum install ncdu # CentOS/RHEL # 扫描大日志文件 sudo ncdu /var/log # 按方向键浏览,d键删除文件
🎯 适合:可视化定位"日志大户"
# 查看容器日志大小 docker ps -q | xargs docker inspect --format='{{.LogPath}}' | xargs ls -lh # 清理所有容器日志 sudo find /var/lib/docker/containers/ -type f -name "*.log" -exec truncate -s 0 {} \;
⚠️ 警告:重启容器可能重新生成日志,建议配置日志驱动限制大小
cp
或rsync
备份关键日志 sudo
或切换root用户操作 logrotate
+cron实现自动化 shred
) df -h
、du -sh *
定期检查磁盘 💬 运维老鸟说:"不会清日志的工程师,迟早要半夜起床救火!"
(本文方法测试于2025年8月,主流Linux发行版均适用)
本文由 母清润 于2025-08-02发表在【云服务器提供商】,文中图片由(母清润)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/515637.html
发表评论