首页主机资讯centos系统垃圾清理指南

centos系统垃圾清理指南

时间2025-12-06 03:37:03发布访客分类主机资讯浏览1183
导读:CentOS 系统垃圾清理指南 一 安全清理流程与准备 备份关键数据与配置:优先备份数据库、业务配置与证书等,避免误删造成不可恢复影响。 检查磁盘占用:先定位“哪里占满”,再定向清理。 查看分区使用:df -h 查看目录大小:du -s...

CentOS 系统垃圾清理指南

一 安全清理流程与准备

  • 备份关键数据与配置:优先备份数据库、业务配置与证书等,避免误删造成不可恢复影响。
  • 检查磁盘占用:先定位“哪里占满”,再定向清理。
    • 查看分区使用:df -h
    • 查看目录大小:du -sh /* | sort -h
    • 交互式分析大目录:ncdu /
  • 选择合适时机:尽量在业务低峰期执行,清理日志类文件时优先“截断/轮转”,避免直接删除正在写入的日志导致服务异常。
  • 最小权限原则:仅在必要时使用 sudo,避免在生产环境执行 rm -rf / 等高风险操作。

二 核心清理步骤

  • 包管理器缓存
    • YUM:sudo yum clean all
    • DNF(CentOS 8+):sudo dnf clean all
  • 无用依赖与旧内核
    • 自动移除无用包:sudo yum autoremove
    • 删除旧内核(保留最近 2 个):sudo package-cleanup --oldkernels --count=2
  • 日志文件
    • 查看 systemd 日志占用:journalctl --disk-usage
    • 按时间清理:journalctl --vacuum-time=7d(保留最近 7 天)
    • 按大小清理:journalctl --vacuum-size=100M
    • 传统日志轮转与清理:logrotate -vf /etc/logrotate.conf(必要时编辑 /etc/logrotate.d/* 配置保留策略)
  • 临时文件
    • 清理系统临时目录:sudo rm -rf /tmp/;sudo rm -rf /var/tmp/
    • 定时清理(推荐纳入日常维护):sudo systemd-tmpfiles --clean --file=/etc/tmpfiles.d/*.conf
  • 大文件定位与清理
    • 查找大于 100MB 的文件:find / -type f -size +100M -exec ls -lh { } ;
    • 交互式定位占用:ncdu /
  • 内存与 Swap(谨慎)
    • 释放页面缓存(仅在必要时):sync & & echo 3 | sudo tee /proc/sys/vm/drop_caches
    • 清理 Swap(会短暂影响性能):sudo swapoff -a & & sudo swapon -a
  • 回收站
    • 清空所有用户回收站:sudo rm -rf /home//.local/share/Trash/
  • 可选图形化工具
    • 安装并使用 BleachBit:sudo yum install bleachbit;bleachbit(谨慎选择清理项)

三 按版本与场景的要点

  • CentOS 7 与 systemd 日志
    • 清空单个日志文件(保留 inode 与权限):> /var/log/messages 或 truncate -s 0 /var/log/messages
    • 配置 journald 持久化与上限:在 /etc/systemd/journald.conf 中设置 SystemMaxUse=100M,随后重启服务:systemctl restart systemd-journald
  • CentOS 8/Stream 与 DNF
    • 包管理使用 DNF:sudo dnf clean all;旧内核保留策略同样可用 package-cleanup
  • 容器与 Docker
    • 容器日志常驻 /var/lib/docker/containers//.log,建议配置 Docker 日志轮转(max-size/max-file),避免无限增长
  • DNS 缓存
    • 如使用 systemd-resolved:sudo systemd-resolve --flush-caches(视实际是否启用该服务而定)

四 自动化与长期维护

  • 定时清理临时文件
    • 编辑 root 定时任务:sudo crontab -e
    • 示例(每天 2 点清理 tmpfiles):0 2 * * * /usr/bin/systemd-tmpfiles --clean --file=/etc/tmpfiles.d/*.conf
  • 日志轮转策略
    • 全局或按服务配置 /etc/logrotate.conf 与 /etc/logrotate.d/*,常用策略:daily、rotate 7、compress、missingok、notifempty、create、postrotate 发送信号重载服务
  • 监控与告警
    • 结合监控(如 df、du、ncdu)与阈值告警,提前发现异常增长(/var/log、/var/lib/docker 等)

五 注意事项与常见误区

  • 不要删除正在被进程写入的日志文件;优先使用“截断”或“轮转”,并确保服务具备自动重建日志文件的能力(如 rsyslog、nginx 等)。
  • 清理 systemd 日志前先确认占用:journalctl --disk-usage;清理后按需设置上限,避免再次暴涨。
  • 谨慎清理 /tmp 与 /var/tmp 中可能被系统或应用锁定的文件;尽量使用 systemd-tmpfiles 机制。
  • 清理内存缓存(drop_caches)仅作临时缓解,不能替代根因分析与容量扩容;生产环境慎用。
  • 清理 Swap 会导致短时性能下降与抖动,非必要不执行。
  • 不要尝试“清理注册表”:Linux(含 CentOS)没有 Windows 式注册表,配置以文本文件与 systemd 单元为主。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos系统垃圾清理指南
本文地址: https://pptw.com/jishu/765518.html
centos清理磁盘空间的工具推荐 如何彻底清理centos的磁盘空间

游客 回复需填写必要信息