CentOS Cleanup能释放的磁盘空间量无固定值,取决于系统使用情况(如日志大小、缓存积累、旧内核数量、临时文件堆积等),但常见清理操作的释放范围及关键方法如下:
YUM(CentOS 7及以下)或DNF(CentOS 8及以上)会缓存软件包及元数据,默认存储在/var/cache/yum
或/var/cache/dnf
目录。使用sudo yum clean all
(或sudo dnf clean all
)可清除这些缓存,通常释放几十MB到几百MB空间(例如,频繁安装/更新软件时,缓存可能占用100MB-500MB)。
每次系统更新会保留旧内核(默认保留3个),存储在/boot
分区。使用package-cleanup --oldkernels --count=1
(需安装yum-utils
)可保留最新1个内核,删除旧版本。释放空间取决于旧内核数量,每个旧内核通常占用200MB-500MB,若系统积累了5个以上旧内核,可释放1GB-2GB以上空间。
日志文件(如/var/log/messages
、/var/log/secure
、journalctl
日志)随时间增长会占用大量空间。
journalctl --vacuum-time=2weeks
(保留最近2周日志)或--vacuum-size=1G
(限制日志总大小为1GB),可释放几MB到几GB空间(例如,日志活跃的系统可能释放1GB-5GB);/var/log/*.log.*
(如.gz
压缩日志)或使用logrotate
配置自动轮转(如保留7天日志、压缩旧日志),定期清理可防止日志占满磁盘。/tmp
(临时文件)和/var/tmp
(长期临时文件)目录存储系统或用户运行程序生成的临时文件,使用sudo rm -rf /tmp/*
和sudo rm -rf /var/tmp/*
可清除。释放空间通常在几十MB到几百MB(例如,长时间运行的服务可能积累100MB-1GB临时文件)。
系统会缓存页面(内存中的文件数据)以提高性能,使用sync && echo 3 > /proc/sys/vm/drop_caches
可清理页面缓存、目录项缓存和inode缓存。此操作释放的是“空闲内存”的磁盘缓存,通常释放几十MB到几百MB(不影响系统性能,因缓存会重新生成)。
使用ncdu
(文本磁盘分析工具,sudo yum install ncdu
)扫描根目录(/
),可快速定位占用空间大的文件或目录(如用户上传的文件、数据库文件、备份文件)。释放空间取决于大文件的存在,例如,找到1个10GB的旧备份文件并删除,可直接释放10GB空间。
df -h
查看磁盘使用情况,用du -sh /path/*
定位大目录;/boot
下的内核文件、/var/log
下的当前日志);