CentOS磁盘清理怎么做
CentOS磁盘清理实操指南
一快速定位占用
查看整体磁盘使用:执行命令:df-h,确认哪个挂载点(如/、/var)占用高。
分析目录占用:执行命令:du-sh/|sort-hr|head*,找出占用最大的目录。
定位大文件:执行命令:find/-typef-size+100M-execls-lh{};2>/dev/null,筛出大于100MB的文件(忽略权限错误)。
可视化分析:安装并使用ncdu(如:ncdu/),交互式查看并定位大目录/文件。
二安全清理动作清单
包管理器缓存
YUM:执行命令:sudoyumcleanall。
DNF(CentOS8+):执行命令:sudodnfcleanall。
无用依赖与旧内核
删除无用依赖:sudoyumautoremove。
删除旧内核(保留最新1–2个):sudopackage-cleanup--oldkernels--count=1(或–count=2)。
临时文件
手动清理:sudorm-rf/tmp//var/tmp/**。
使用systemd-tmpfiles:sudosystemd-tmpfiles--clean(按配置清理过期临时文件)。
日志文件
systemd日志:sudojournalctl--vacuum-time=2weeks(保留最近2周,可按需改为7d/30d)。
轮转与压缩:确保logrotate正常运行,按日/周轮转并压缩旧日志。
大文件与回收站
按时间清理旧文件:sudofind/var/log-typef-name“*.log”-mtime+30-delete(示例:删除30天前的日志)。
清空回收站:sudorm-rf/home//.local/share/Trash/(对所有用户)。
可选:释放页面缓存(不影响磁盘数据,仅影响内存缓存)
执行:sudosync&&echo3|sudotee/proc/sys/vm/drop_caches(仅在必要时使用)。
三按版本与场景补充
CentOS7vs8+
CentOS7:默认使用YUM;清理命令以yumcleanall、package-cleanup为主。
CentOS8+:使用DNF;清理命令以dnfcleanall为主,其他步骤基本一致。
桌面环境
图形化分析器:安装并使用Baobab(磁盘使用分析器)快速定位大目录。
DNS缓存
如启用systemd-resolved:执行sudosystemd-resolve--flush-caches清理DNS缓存。
四自动化与风险控制
定时清理临时文件(示例脚本+cron)
脚本示例:#!/bin/bashfind/tmp-typef-mtime+7-deletefind/var/tmp-typef-mtime+7-deletesudoyumcleanallsudodnfcleanall2>/dev/null||truesudosystemd-tmpfiles--clean
加入计划任务:执行sudocrontab-e,添加如:02***/path/to/cleanup.sh。
操作要点
执行清理日志与删除大文件前,先确认业务是否依赖(如数据库、应用日志)。
删除旧内核前,确认当前运行内核:uname-r,避免误删正在使用的内核。
重要数据务必先备份,删除操作不可逆。

