centos中哪些文件可以回收
小樊
41
2025-12-25 11:41:22
CentOS 可回收的文件与清理范围
一 系统可回收的典型文件
- 包管理缓存与旧安装包
- /var/cache/yum/、/var/cache/dnf/(CentOS 8+)
- 命令:yum clean all、dnf clean all
- 临时文件
- /tmp/、/var/tmp/(系统重启通常不自动清理/var/tmp,建议定期清理)
- 命令:如确认无业务占用,可用 rm -rf /tmp/ /var/tmp/**(谨慎)
- 日志文件(轮转后旧文件、历史归档)
- 常见日志:/var/log/messages、/var/log/secure、/var/log/maillog、/var/log/cron、/var/log/boot.log
- 建议用 logrotate 自动轮转与清理;手动清理优先用 truncate -s 0 /var/log/xxx.log 或删除 .gz/.old 归档,避免直接粗暴删除正在写入的日志
- 旧内核与不再需要的依赖
- 查看:rpm -qa | grep kernel
- 清理:yum remove <旧内核包名>、yum autoremove
- 大文件与旧备份
- 查找大文件:find / -type f -size +100M -exec ls -lh {} ; 2>/dev/null
- 删除 N 天前备份:find /path/to/backup -type f -mtime +30 -delete
- 包管理器历史与未使用软件包
- 清理历史与无用包:yum autoremove、按需 yum remove
二 不建议直接删除或需谨慎处理的文件
- 正在被进程写入的日志文件(可能导致服务异常或日志丢失)
- /var/lib/ 下数据库、容器、邮件等运行时数据(如 /var/lib/mysql、/var/lib/docker)
- /etc/ 配置、/usr/ 程序、/boot/ 内核与引导文件
- 任何你不了解用途的文件或目录
- 建议做法:先定位占用与用途(如 lsof | grep deleted 查看被删除但仍被占用的文件句柄),再按服务维护流程停机或迁移后清理
三 安全清理与回收站机制
- 先评估空间:
- 整体使用:df -h
- 目录占用:du -h --max-depth=1 /var/log、du -x --max-depth=1 / | sort -nr
- 清理策略优先级:
- 先用包管理器与系统工具(如 yum/dnf clean all、logrotate),再清理临时文件与旧日志归档,最后处理大文件与旧备份
- 实现“回收站”以避免误删(可选)
- 简单别名方案:将 rm 替换为将文件移动到 ~/.trash 并加时间戳的脚本,提供 lt(查看)、hy(还原)、qk(清空)等命令
- 工具方案:安装 trash-cli,使用 trash-put 移入回收站、trash-restore 还原、trash-empty 清空;可配合 crontab 定期清理超过 30 天 的回收站内容