在 Linux 系统中做“高效 cleanup”通常分为几个层面:系统垃圾清理、日志与缓存管理、磁盘空间释放、自动化维护。下面按「实用优先级」给你一套高效做法。
df -h
du -h --max-depth=1 / | sort -h
重点目录:
/var/log/tmp~/.cache/var/lib/dockerDebian / Ubuntu
sudo apt autoremove
sudo apt clean
CentOS / RHEL
sudo yum clean all
# 或
sudo dnf autoremove
sudo dnf clean all
# 只保留最近 7 天日志
sudo journalctl --vacuum-time=7d
# 限制日志最大 500MB
sudo journalctl --vacuum-size=500M
手动清理旧 log:
sudo find /var/log -type f -name "*.log" -mtime +30 -delete
sudo rm -rf /tmp/*
rm -rf ~/.cache/*
docker system prune -a
docker volume prune
只删没用的:
docker image prune
docker container prune
# 找出大于 100MB 的文件
find / -type f -size +100M -exec ls -lh {} \;
或用 ncdu(强烈推荐):
sudo apt install ncdu
ncdu /
systemd 定时清理sudo systemctl enable --now fstrim.timer # SSD 优化
#!/bin/bash
apt autoremove -y
apt clean
journalctl --vacuum-time=7d
rm -rf /tmp/*
docker system prune -af
加执行权限并设 cron:
crontab -e
0 3 * * 0 /path/cleanup.sh
logrotate 控制日志大小quota)tmpfs 挂载 /tmpprometheus + node_exporter高效 cleanup = 找出占用 → 清包 / 日志 / 缓存 / Docker → 自动化
如果你愿意,可以告诉我:
我可以直接给你一套「定制命令清单」。