温馨提示×

Linux清理技巧大揭秘:轻松释放磁盘空间

小樊
34
2025-12-09 06:12:14
栏目: 云计算

Linux 清理技巧大揭秘:轻松释放磁盘空间

一 快速定位占用

  • 查看整体使用率与是否inode耗尽:df -hdf -i。若某个挂载点(如 //var)使用率接近 100%,优先排查该分区。
  • 定位大目录:du -xh / | sort -rh | head -n 20(按实际使用统计,避免跨挂载点干扰);或逐级查看:du -sh /* 2>/dev/null
  • 定位大文件:find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null | sort -k 5 -rh | head -n 20(确认后再删除)。
  • 图形化辅助:Baobab(磁盘使用分析器)快速发现“空间大户”。

二 安全清理动作清单

  • 包管理器缓存
    • Debian/Ubuntu:sudo apt-get cleansudo apt-get autocleansudo apt-get autoremove --purge
    • RHEL/CentOS:sudo yum clean allsudo yum autoremove
    • Fedora:sudo dnf clean allsudo dnf autoremove
  • 日志与 journal
    • 保留最近日志:sudo journalctl --vacuum-time=7d 或按大小 sudo journalctl --vacuum-size=100M
    • 归档并轮转:sudo journalctl --rotate;必要时清理旧归档:sudo rm -rf /var/log/*.gz /var/log/*.1
  • 临时文件
    • 清理临时目录:sudo rm -rf /tmp/*sudo rm -rf /var/tmp/*
    • 定时清理旧临时文件:sudo tmpwatch 7d /tmp(或 tmpreaper
  • Docker(如已安装)
    • 清理无用数据:docker system prune -afdocker volume prune -f
  • 旧内核(谨慎)
    • 列出:dpkg --list | grep linux-imagerpm -q kernel
    • 卸载后更新引导:sudo update-grub
  • 浏览器缓存(示例路径)
    • Chrome:rm -rf ~/.config/google-chrome/Default/Cache
    • Firefox:rm -rf ~/.mozilla/firefox/*.default-release/cache2
  • 图形化工具
    • BleachBit:清理系统缓存、临时文件、日志等(支持 CLI/GUI)。

三 进阶与自动化

  • 释放内核页缓存(仅在必要时、确保业务允许时执行)
    • 同步后清理:sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches(1=页缓存,2=目录项与inode,3=全部)
  • 查找并按时间清理旧备份
    • 删除 30 天前的备份:find /path/to/backup -type f -mtime 30 -delete
  • 设置定时任务
    • 示例(每天 02:00 执行清理脚本):0 2 * * * /path/to/cleanup.sh

四 注意事项与排错

  • 高危命令防护:rm -rf 前务必确认路径与作用范围,优先用 find ... -exec ls -lh {} \; 先列出再删除。
  • 避免误删正在使用的文件:清理 /tmp 与日志前,确认无关键进程占用;必要时先停服务或使用 journalctl 管理。
  • 清理后空间未释放:检查是否有进程仍占用被删除文件句柄(lsof | grep deleted),必要时重启相关服务或系统。
  • 不是空间问题而是 inode 耗尽:用 df -i 确认,再清理大量小文件(如缓存、会话、旧日志碎片)。
  • 重要数据先备份:任何批量删除前做一次可回滚的备份。

0