清理CentOS系统垃圾的完整步骤
临时文件是系统运行过程中产生的无用文件,主要存储在/tmp和/var/tmp目录下。使用以下命令清理:
sudo rm -rf /tmp/* # 清理/tmp目录下的所有临时文件(系统重启后会重新创建)
sudo rm -rf /var/tmp/* # 清理/var/tmp目录下的临时文件
注意:部分应用程序(如Firefox)会在用户目录下生成临时文件,可通过以下命令清理:
rm -rf ~/.mozilla/firefox/*/Cache/* # 清理Firefox缓存(替换~为用户家目录)
包管理器(yum/dnf)下载的RPM包和元数据会占用大量磁盘空间,需定期清理:
sudo yum clean all # 清理所有缓存(包括元数据、下载的RPM包)
sudo dnf clean all # 功能同yum clean all,适用于dnf
系统中可能存在不再使用的软件包和依赖,可通过以下命令自动检测并删除:
sudo yum autoremove # CentOS 7及以下
sudo dnf autoremove # CentOS 8及以上
此命令会列出并删除所有未被任何软件包依赖的无用组件,释放磁盘空间。
旧内核版本不会自动删除,会占用/boot分区空间。需保留当前正在使用的内核,删除旧版本:
rpm -q kernel # 列出所有已安装的内核版本
sudo package-cleanup --oldkernels --count=2 # 仅保留最近2个内核
或手动指定内核版本删除(需确认版本号):sudo yum remove kernel-3.10.0-1160.el7.x86_64 # 替换为实际旧内核版本
系统日志(如/var/log/messages、/var/log/secure)会随时间增长占用大量空间,可通过以下方式清理:
sudo journalctl --vacuum-time=2weeks # 删除两周前的日志
sudo journalctl --vacuum-size=1G # 删除超过1GB的日志
sudo truncate -s 0 /var/log/messages # 清空messages日志(保留文件结构)
sudo rm -f /var/log/secure /var/log/maillog # 删除特定日志文件(谨慎操作)
系统缓存(页面缓存、目录项缓存)用于提高性能,但过多缓存会占用内存和磁盘空间。可通过以下命令清理:
sync; echo 3 > /proc/sys/vm/drop_caches # 清除页面缓存、目录项缓存和inode缓存
注意:此命令不会影响正在运行的程序,但可能导致后续操作短暂变慢(缓存会自动重建)。
使用以下命令查找系统中占用空间大的文件(如大于100MB的文件),并手动删除无用文件:
du -sh /* # 查看根目录下各目录的大小(找出占用大的目录)
find / -type f -size +100M -exec ls -lh {} \; # 查找大于100MB的文件
find / -type f -size +100M -exec rm -f {} \; # 删除大于100MB的文件(谨慎操作)
若系统中安装了浏览器(如Chrome、Firefox),需定期清理浏览器缓存:
设置 -> 隐私和安全 -> 清除浏览数据,选择“时间范围”为“所有时间”,勾选“缓存的图像和文件”,点击“清除数据”。设置 -> 隐私和安全 -> 清除数据,选择“缓存”,点击“清除”。若希望图形化操作,可使用以下工具简化清理流程:
sudo yum install bleachbit # 安装BleachBit
sudo bleachbit # 启动工具,选择清理项目(如系统缓存、临时文件、日志)
sudo yum install system-cleaner # 安装System Cleaner
sudo system-cleaner # 启动工具,清理系统垃圾
/home、/etc等关键目录,避免误删重要文件。