云服务器系统日志占满磁盘怎么办?
云服务器系统日志占满磁盘是常见问题,长期积累大量日志文件会导致磁盘空间不足,影响服务器稳定运行。下面是几种常用的清理和管理日志的方法:
解决系统日志占满磁盘的步骤
1. 查看磁盘使用情况和日志目录大小
df -h # 查看磁盘空间使用情况 du -sh /var/log/* # 查看 /var/log 下各日志文件大小
2. 清理旧日志文件
日志文件一般在 /var/log/
目录,可以删除旧的压缩日志和无用日志:
sudo rm -f /var/log/*.gz sudo rm -f /var/log/*.1 sudo rm -f /var/log/*-????????
3. 使用 logrotate 进行日志轮转管理
logrotate
是 Linux 常用的日志自动切割工具,可以按配置自动压缩、删除旧日志。
手动强制执行:
sudo logrotate --force /etc/logrotate.conf
4. 清空过大的日志文件(不删除文件,只清空内容)
例如清空 syslog:
sudo truncate -s 0 /var/log/syslog
或者清空 auth.log:
sudo truncate -s 0 /var/log/auth.log
5. 检查日志产生的原因,减少日志量
-
检查是否有程序异常大量写日志(如不停报错的服务)
-
调整程序日志等级,避免写入过多 debug 信息
-
配置日志轮转频率和保留时长
6. 配置自动清理(定时任务)
可以用 cron
定时执行清理脚本,例如每周清理一次压缩日志:
0 3 * * 0 root find /var/log -name "*.gz" -type f -mtime +7 -exec rm -f {} \;