应分源定位、按规清理:apt用apt clean/autoclean,dnf/yum用clean all,journal日志用journalctl --vacuum-time,nginx缓存需通过模块或确认路径后删,/tmp和/var/tmp用find按访问/修改时间清理,~/.cache可安全清除,禁删/var/cache/ldconfig等关键目录。

清理 Linux 中目录产生的临时缓存,不能靠一招“rm -rf”通吃——不同位置的缓存归属不同机制,误删可能影响服务运行、日志归档或包管理功能。关键在“分源定位、按规清理”。
先查清楚谁在占空间
盲目进目录删前,务必用命令摸清真实占用来源:
- 看整体分布:sudo du -sh /var/cache/* | sort -hr | head -10
- 查 APT 缓存(Ubuntu/Debian):sudo du -sh /var/cache/apt/archives
- 查 DNF/YUM 缓存(RHEL/Fedora/CentOS):sudo du -sh /var/cache/dnf /var/cache/yum
- 查 systemd-journal 日志体积:journalctl --disk-usage
- 查 Nginx 实际缓存路径(若启用):sudo nginx -T 2>&1 | grep proxy_cache_path
按服务类型安全清理
每个子目录对应独立管理逻辑,必须用其原生方式处理:
- APT 缓存(/var/cache/apt/archives):用 sudo apt autoclean 清过期安装包;需要彻底清空则用 sudo apt clean
- DNF/YUM 缓存(/var/cache/dnf 或 /var/cache/yum):执行 sudo dnf clean all 或 sudo yum clean all
- systemd-journal 日志(/var/log/journal):限制总量可写入 /etc/systemd/journald.conf.d/limit.conf,内容如 SystemMaxUse=500M;立即清理旧日志用 sudo journalctl --vacuum-time=3d
- Nginx 缓存(/var/cache/nginx):切勿直接 rm -rf;推荐配置 ngx_cache_purge 模块发 PURGE 请求;手动删需先确认 proxy_cache_path 路径,再逐层删除哈希目录
用户级与系统级临时文件清理
这类文件生命周期短、无强依赖,但也要避开运行中句柄:
- /tmp:多数系统已配置 tmpfiles.d 或 systemd-tmpfiles 自动清理;如需手动干预,可用 sudo find /tmp -type f -atime +10 -delete(删 10 天未访问文件)
- /var/tmp:重启不自动清,易堆积旧任务数据;建议定期执行 sudo find /var/tmp -type f -mtime +30 -delete
- ~/.cache:用户级缓存,可安全清理;例如清 Firefox:rm -rf ~/.cache/mozilla/firefox/*/cache2/*;或整清(建议先备份):rm -rf ~/.cache/*
哪些目录绝对不要碰
有些看似“缓存”,实为运行时关键数据或自动管理区域:
- /var/cache/ldconfig:动态链接库映射缓存,由 ldconfig 自动更新,手动删会导致程序加载失败
- /var/cache/man:man 手册索引缓存,可清但非必要;清完首次查手册会稍慢
- /var/cache/samba、/var/cache/krb5cc:涉及认证或网络服务状态,删前需确认服务已停或有明确文档支持
- /var/cache/private(部分发行版存在):可能被 systemd 或 snap 使用,无官方说明不建议操作











