以下是CentOS系统日志清理的常用技巧:
journalctl命令
journalctl --vacuum-time=1w
journalctl -u nginx --vacuum-time=1w
journalctl --disk-usage
手动清理
echo "" > /var/log/文件名
或 truncate -s 0 /var/log/文件名
find /var/log -type f -name "*.log" -mtime +30 -exec rm {} \;
/etc/logrotate.d/nginx
):/var/log/nginx/*.log {
daily
rotate 7
compress
missingok
notifempty
create 0640 nginx nginx
}
daily
:按天轮转;rotate 7
:保留7天日志;compress
:启用压缩。logrotate -f /etc/logrotate.conf
/usr/local/bin/clean_logs.sh
:#!/bin/bash
find /var/log -type f -name "*.log" -mtime +30 -exec rm -f {} \;
0 0 * * * /usr/local/bin/clean_logs.sh
/var/log/messages
)建议保留。sudo
或root权限。postrotate
脚本重启服务(如Nginx)。