首页主机资讯如何有效进行centos系统清理

如何有效进行centos系统清理

时间2025-12-02 17:30:04发布访客分类主机资讯浏览1298
导读:CentOS 系统清理与维护实操指南 一 核心清理清单 包管理器缓存 清理 YUM 缓存:sudo yum clean all 清理 DNF 缓存(CentOS 8+):sudo dnf clean all 临时文件 清理系统临时...

CentOS 系统清理与维护实操指南

一 核心清理清单

  • 包管理器缓存
    • 清理 YUM 缓存:sudo yum clean all
    • 清理 DNF 缓存(CentOS 8+):sudo dnf clean all
  • 临时文件
    • 清理系统临时目录:sudo rm -rf /tmp/ /var/tmp/**
  • 日志与 journal
    • 查看占用:sudo du -sh /var/log/ | sort -h*
    • 按时间保留 journal:sudo journalctl --vacuum-time=7d(保留最近 7 天
    • 按体积保留 journal:sudo journalctl --vacuum-size=500M
  • 旧内核(谨慎)
    • 安装清理工具:sudo yum install yum-utils
    • 仅保留最新 1 个内核:sudo package-cleanup --oldkernels --count=1
  • 大文件定位
    • 全盘扫描:sudo du -sh / | sort -h*
    • 查找大于 100MB 的文件:sudo find / -type f -size +100M -exec ls -lh { } ; 2> /dev/null
  • 回收站
    • 清空当前用户回收站:rm -rf ~/.local/share/Trash/files/ & & rm -rf ~/.local/share/Trash/info/*

二 进阶清理与瘦身

  • 删除无用软件包
    • 卸载指定包:sudo yum remove < package_name> sudo dnf remove < package_name>
    • 自动移除不再被依赖的包:sudo yum autoremovesudo dnf autoremove
  • 包管理器缓存目录
    • 进一步释放:sudo rm -rf /var/cache/yum/ /var/cache/dnf/**
  • 第三方工具
    • 安装并使用 BleachBit:sudo yum install bleachbit & & sudo bleachbit
  • 可选:清理内存页缓存(仅释放内存,不释放磁盘)
    • 执行:sudo sync & & echo 3 | sudo tee /proc/sys/vm/drop_caches
  • 可选:清理 Swap(会短暂影响性能)
    • 执行:sudo swapoff -a & & sudo swapon -a
  • 可选:清理 DNS 缓存(如使用 systemd-resolved)
    • 执行:sudo systemd-resolve --flush-caches
  • 可选:清理 core dump
    • 执行:sudo find / -type f -name “core” -delete 2> /dev/null

三 安全操作与风险控制

  • 操作前务必备份重要数据,清理命令涉及通配符与递归删除,误删可能导致系统不可用。
  • 删除旧内核前,先确认当前启动内核:uname -r,确保至少保留 1 个可启动内核。
  • 清理日志优先使用 journalctl --vacuum-time/size,避免直接 rm -rf /var/log 导致服务异常或日志轮转失效。
  • 清理临时目录时避免跨文件系统误删挂载点内容;必要时使用 -xdev 限制 find 范围。
  • 清理内存缓存与 Swap 仅用于临时缓解内存压力,不作为常规清理手段。

四 自动化与长期维护

  • 定时清理临时文件
    • 每日清理 systemd-tmpfiles:sudo crontab -e 添加
      • 0 2 * * * /usr/bin/systemd-tmpfiles --clean --file=/etc/tmpfiles.d/*.conf
  • 一键清理脚本(示例)
    • 保存为 clean_disk.sh,执行 chmod +x clean_disk.sh & & sudo ./clean_disk.sh
    • 脚本内容:
      • #!/bin/bash echo “清理 YUM/DNF 缓存…” if command -v dnf & > /dev/null; then sudo dnf clean all; else sudo yum clean all; fi echo “清理 journal(保留 7 天)…” sudo journalctl --vacuum-time=7d echo “清理 /tmp 和 /var/tmp…” sudo rm -rf /tmp/* /var/tmp/* echo “清理 7 天前的旧日志…” sudo find /var/log -type f ( -name “.log" -o -name ".gz” ) -mtime +7 -delete echo “大日志文件仅清空(不删除)…” sudo find /var/log -type f -name ".log" -size +100M -exec truncate -s 0 { } ; echo “删除 core dump…” sudo find / -type f -name “core” -delete 2> /dev/null echo “清理用户缓存(谨慎)…” rm -rf ~/.cache/ ~/.npm/_cacache ~/.pip/cache/* echo “完成,当前磁盘使用:” df -h /
  • 日常巡检
    • 查看磁盘:df -h
    • 查看目录占用:sudo du -sh /var/ | sort -h*
    • 可视化分析:sudo yum install ncdu & & sudo ncdu /

五 场景化建议

  • 日志增长过快
    • 调整 /etc/logrotate.conf/etc/logrotate.d/ 策略;优先用 journalctl --vacuum-time/size 控制 journal 体积。
  • 容器环境(Docker)
    • 定期执行:docker system prune -af --volumes(会删除停止的容器、悬挂镜像与无用卷,谨慎操作)。
  • 开发环境
    • 清理语言与构建缓存:rm -rf ~/.cache/*、~/.npm、~/.pip/cache;必要时清理 /tmp/npm-*。

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


若转载请注明出处: 如何有效进行centos系统清理
本文地址: https://pptw.com/jishu/761453.html
如何通过centos清理提升安全性 如何避免centos backlog堆积

游客 回复需填写必要信息