定期清理Ubuntu日志可通过以下方式操作,建议结合工具与脚本实现自动化管理:
journalctl命令(针对systemd日志)
journalctl --disk-usagesudo journalctl --vacuum-time 1wsudo journalctl --vacuum-size 500Mlogrotate工具(自动轮转压缩)
/etc/logrotate.d/rsyslog):/var/log/syslog {
daily
rotate 7
compress
missingok
}
sudo logrotate -f /etc/logrotate.confsudo find /var/log -type f -name "*.log" -exec truncate -s 0 {} \;sudo find /var/log -type f -name "*.log" -mtime +30 -delete#!/bin/bash
LOG_DIR="/var/log"
find "$LOG_DIR" -type f -name "*.log" -mtime +30 -exec rm -f {} \;
保存为clean_logs.sh,赋予执行权限:chmod +x clean_logs.sh。crontab -e,添加行:0 2 * * * /path/to/clean_logs.sh。/var/log/auth.log)。rm -rf,避免误删系统关键日志。df -h查看剩余空间。以上方法可根据需求选择,优先使用journalctl或logrotate实现自动化管理,减少手动操作风险。