插件窝 干货文章 Linux系统垃圾清理:这些文件夹别忽视

Linux系统垃圾清理:这些文件夹别忽视

清理 文件 目录 命令 559    来源:    2025-05-05

在Linux系统中,系统垃圾往往隐藏在容易被忽视的目录中。以下是需要重点关注的目录及清理建议,附带安全操作指南:


1. 临时文件目录

  • /tmp

    • 系统级临时目录,部分文件重启后自动清除
    • 安全清理:sudo find /tmp -type f -atime +7 -delete
      (删除7天未访问的文件)
  • ~/.cache

    • 用户级缓存(浏览器缓存、软件缓存等)
    • 清理命令:rm -rf ~/.cache/*
      (保留目录结构,仅清空内容)

2. 软件包缓存

  • /var/cache/apt/archives (Debian/Ubuntu)

    • 存储已下载的.deb安装包
    • 清理命令:sudo apt clean(彻底清除)或 sudo apt autoclean(仅删除旧版本)
  • /var/cache/yum (CentOS/RHEL)

    • 清理命令:sudo yum clean all

3. 日志文件

  • /var/log
    • 系统日志可能占用大量空间
    • 安全操作:
      bash sudo journalctl --vacuum-time=30d # 清理30天前的journal日志 sudo find /var/log -type f -name "*.log" -exec truncate -s 0 {} \; # 清空.log文件内容(保留文件)

4. 废弃内核文件

  • /boot
    • 旧内核文件(如vmlinuz-*initrd.img-*
    • 清理步骤:
    1. 查看当前内核:uname -r
    2. 删除旧内核:sudo apt purge linux-image-5.4.0-XX-generic(替换为旧版本号)

5. 用户残留文件

  • ~/.local/share/Trash

    • 图形界面回收站的实际存储位置
    • 清理命令:rm -rf ~/.local/share/Trash/*
  • 孤儿配置文件

    • 已卸载软件残留的~/.config/~/.local/share/中的配置
    • 查找命令:find ~ -name "*~" -o -name "*.bak" -o -name "*.old"

6. 容器/Docker垃圾

  • 未使用的容器镜像
    bash docker system prune -a # 删除所有未使用的镜像、容器、网络

安全建议

  1. 清理前确认

    • 使用du -sh /path/to/dir查看目录大小
    • lstree检查文件内容
  2. 重要文件备份

    tar -czvf backup_$(date +%Y%m%d).tar.gz /path/to/important_data
    
  3. 自动化清理工具

    • logrotate:配置日志轮替
    • cron定时任务示例(每月清理):
      bash 0 3 1 * * /usr/bin/apt clean && /usr/bin/journalctl --vacuum-time=30d

风险提示

  • ❌ 避免直接删除/var/usr等系统目录
  • ❌ 不要清空/dev/proc/sys等虚拟文件系统
  • 生产环境建议先在测试机验证清理命令

通过定期检查这些目录,可有效释放磁盘空间,同时保持系统稳定性。建议结合ncdu工具可视化分析磁盘使用情况。