如何利用CentOS自带的清理工具
导读:CentOS自带清理工具与方法 一 包管理与软件缓存 清理 YUM 缓存:执行 sudo yum clean all;如仅需刷新元数据,可用更温和的 yum clean expire-cache。 删除无用依赖:执行 sudo yum a...
CentOS自带清理工具与方法
一 包管理与软件缓存
- 清理 YUM 缓存:执行 sudo yum clean all;如仅需刷新元数据,可用更温和的 yum clean expire-cache。
- 删除无用依赖:执行 sudo yum autoremove。
- 清理旧内核(需安装 yum-utils):执行 sudo package-cleanup --oldkernels --count=2(仅保留最近 2 个内核)。
- 若系统为 CentOS 8 / Stream 或使用 DNF:可用 sudo dnf clean all 与 sudo dnf autoremove 对应清理。
二 日志与临时文件
- 临时文件:清理 /tmp 与 /var/tmp(谨慎:确保无服务依赖正在使用的文件),命令:sudo rm -rf /tmp/ /var/tmp/**。
- 日志轮转与清理:强制执行一次轮转 sudo logrotate -f /etc/logrotate.conf;按时间清理旧日志:find /var/log -type f -name “*.log” -mtime +30 -delete;或仅截断不删除文件:find /var/log -type f -name “*.log” -exec truncate --size 0 { } ; 。
- 回收站:清空 root 回收站 sudo rm -rf /root/.local/share/Trash/*。
三 定位大文件与目录
- 快速查看占用:
- 各分区总览:du -sh / | sort -rh | head -n 10*
- 全盘查找大文件:find / -type f -size +100M -exec ls -lh { } ;
- 交互式分析:安装并使用 ncdu(如 sudo yum install ncdu,随后 sudo ncdu /)快速定位大目录与文件。
四 内存缓存清理
- 说明:仅释放 Page Cache / Dentry / Inode 等可回收内核缓存,不会释放应用程序内存;操作前先 sync 落盘。
- 按需清理:
- 仅 Page Cache:sync & & echo 1 > /proc/sys/vm/drop_caches
- 仅 Dentry/Inode:sync & & echo 2 > /proc/sys/vm/drop_caches
- 全部可回收缓存:sync & & echo 3 > /proc/sys/vm/drop_caches
- 风险提示:在数据库、编译、容器等高负载场景不建议频繁清理,可能造成性能抖动。
五 自动化与注意事项
- 定时清理脚本示例(/usr/local/bin/cleanup.sh):
加入计划任务(每天 2:30 执行):30 2 * * * /usr/local/bin/cleanup.sh > /dev/null 2> & 1;确保 crond 运行:systemctl enable --now crond。#!/bin/bash sync yum clean all yum autoremove -y package-cleanup --oldkernels --count=2 -y find /var/log -type f -name "*.log" -mtime +30 -delete truncate -s 0 /var/log/messages /var/log/secure 2> /dev/null || true rm -rf /tmp/* /var/tmp/* - 注意事项:
- 清理 /tmp 前确认无服务正在使用;清理日志时避免直接删除正在写入的 /var/log/messages、/var/log/secure 等,优先用 truncate 或交由 logrotate。
- 生产环境不建议定时清理内存缓存;如确需,限制频率并避开业务高峰。
- 执行 yum/dnf 清理与 package-cleanup 前建议先确认当前运行内核与业务依赖,避免误删。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何利用CentOS自带的清理工具
本文地址: https://pptw.com/jishu/787814.html
