在 Linux 系统中,日志文件不能随意删除,否则可能导致服务异常或丢失排障信息。安全清理的核心原则是:释放空间,但保留文件存在、权限和正在写入的句柄。
下面按「安全程度」从推荐到不推荐说明。
truncatesudo truncate -s 0 /var/log/syslog
sudo > /var/log/messages
或
sudo cat /dev/null > /var/log/auth.log
logrotate(强烈推荐)大多数 Linux 发行版已配置:
sudo logrotate -f /etc/logrotate.conf
查看配置:
cat /etc/logrotate.d/*
journalctl --disk-usage
sudo journalctl --vacuum-time=7d
# 或
sudo journalctl --vacuum-size=500M
sudo du -sh /var/log/*
清理前确认:
lsof | grep deleted
若有“deleted 但仍被占用”的日志,说明不能直接 rm。
❌ 直接删除日志文件
rm /var/log/syslog
后果:
rm -rf /var/loglogrotateaudit.log)需特别谨慎如果你愿意,可以告诉我:
我可以给你精确可执行的清理命令。