如何使用centos清理工具
小樊
42
2025-11-21 23:49:10
CentOS 清理工具与方法
一 使用前准备
- 以具有 root 或 sudo 权限的账户操作,避免误删关键文件。
- 先评估空间占用:使用 df -h 查看分区使用率,使用 du -h --max-depth=1 /var 定位大目录,必要时用 ncdu 交互式分析(安装:sudo yum install ncdu;使用:sudo ncdu /)。
- 重要数据务必先 备份,清理操作不可逆。
二 包管理与系统缓存清理
- 清理包管理器缓存:
- YUM:执行 sudo yum clean all;必要时可手动清理 /var/cache/yum 与 /var/tmp/yum-*。
- DNF(CentOS 8+):执行 sudo dnf clean all。
- 删除无用依赖包:执行 sudo yum autoremove(移除不再被依赖的包)。
- 清理旧内核(仅保留最近 2 个版本):执行 sudo package-cleanup --oldkernels --count=2(确保至少保留一个可启动内核)。
- 清理孤立/无用包:先查 package-cleanup --quiet --leaves --exclude-bin,确认列表后删除:package-cleanup --quiet --leaves --exclude-bin | xargs yum remove -y。
三 日志与临时文件清理
- 系统日志(systemd Journal):按时间保留最近 7 天日志:sudo journalctl --vacuum-time=7d。
- 传统日志文件:
- 截断超过 50MB 且 7 天未修改的日志:find /var/log -type f -name “*.log” -size +50M -mtime +7 -exec truncate -s 0 {} ;。
- 删除 30 天前的日志:find /var/log -type f -name “*.log” -mtime +30 -exec rm -f {} ;。
- 建议配合 logrotate 自动轮转(编辑 /etc/logrotate.conf 或相应配置段,设置 rotate、weekly、compress 等策略)。
- 临时文件:清理 /tmp 与 /var/tmp(谨慎,确保不影响运行中服务):sudo rm -rf /tmp/ /var/tmp/**。
- 用户回收站:清空当前用户回收站(以 username 为例):sudo rm -rf /home/username/.local/share/Trash/*。
四 图形化与第三方清理工具
- BleachBit(开源、跨平台):可清理缓存、临时文件、日志,并支持文件粉碎与空闲空间覆写以保护隐私。
- 安装:从官网获取适配 CentOS 的 RPM 包后安装(或使用发行版仓库)。
- 使用:图形界面勾选项目执行;亦可用命令行模式做批量/自动化清理。
五 自动化与注意事项
- 定时清理:将清理命令写入脚本并用 crontab 定时执行(示例思路:清理 /tmp 下超大 nohup.out、定期清理日志/缓存等)。
- 内存缓存释放(仅在必要时):执行 sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches;此操作会释放页面缓存、目录项与索引节点缓存,可能导致短期性能下降,不建议频繁使用。
- 安全建议:
- 不要直接 rm -rf /var/log/*,优先用 truncate、logrotate 或按时间删除,避免破坏正在写入的日志与日志轮转状态。
- 删除旧内核前确认当前内核可正常启动,至少保留 1–2 个可用内核版本。
- 清理 /tmp 前确认无服务依赖其临时文件;必要时先停服务或延后清理。