在清理前,需先明确系统磁盘空间的使用情况,避免盲目删除。常用命令如下:
df -h:以人类可读格式(GB/MB)显示所有挂载点的磁盘使用情况,快速识别哪个分区空间不足(如/根分区或/home用户分区)。du -sh *:统计当前目录下各文件/子目录的总大小,配合sort -hr可按大小排序,快速定位大目录(如du -sh * | sort -hr | head -n 10显示当前目录下最大的10个文件/目录)。ncdu:交互式磁盘分析工具(需安装:sudo apt install ncdu),通过终端界面直观展示目录树的空间占用,支持导航和直接删除文件,比du更易用。包管理器(如APT、DNF、Pacman)会缓存下载的软件包,占用大量空间。清理命令因发行版而异:
sudo apt clean:清除所有已下载的旧版本软件包(位于/var/cache/apt/archives/)。sudo apt autoclean:仅删除不再需要的旧版本缓存(保留最新版本)。sudo apt autoremove:自动删除不再需要的依赖包(如卸载软件后残留的库文件)。sudo dnf clean all:清除DNF的所有缓存(包括软件包、元数据)。sudo yum clean all:YUM的等效命令(适用于CentOS 7及以下)。sudo pacman -Sc:清理未安装软件的缓存(位于/var/cache/pacman/pkg/)。sudo pacman -Scc:彻底清理所有缓存(谨慎使用,会删除所有缓存文件)。临时文件和用户缓存(如浏览器、系统临时文件)是磁盘空间的“常驻小偷”,定期清理可快速释放空间:
/tmp目录:/tmp用于存储临时文件,重启后会自动清空,但可手动清理(谨慎使用,避免删除正在使用的文件):sudo rm -rf /tmp/*~/.cache/(如浏览器缓存、应用临时文件),可通过以下命令清理:rm -rf ~/.cache/*/var/log/)会随时间增长占用大量空间,可使用journalctl清理systemd日志:sudo journalctl --vacuum-time=7d(保留最近7天的日志)或sudo journalctl --vacuum-size=100M(限制日志大小为100MB)。大型文件(如视频、ISO镜像、旧备份)是磁盘空间的主要消耗者,可通过以下命令快速定位并删除:
find / -type f -size +500M -exec ls -lh {} \;(-type f表示文件,-size +500M表示大于500MB,-exec ls -lh {} \;显示文件详情)。find与rm删除:找到后可直接删除(谨慎使用,建议先确认文件用途):find / -type f -size +500M -exec rm -rf {} \;(如需排除某些目录,可添加-not -path "/path/to/exclude/*")。FSlint工具(sudo apt install fslint)扫描并删除重复文件:fslint --duplicate(图形界面或命令行均可使用)。无用软件包和旧内核会持续占用磁盘空间,需定期清理:
sudo apt remove --purge package_name(--purge选项删除软件及配置文件)。sudo dnf remove package_name。dpkg --get-selections | grep linux-image(Debian/Ubuntu)或rpm -q kernel(Fedora/CentOS)。uname -r查看):sudo apt remove linux-image-old_version(Debian/Ubuntu)或sudo dnf remove kernel-old_version(Fedora/CentOS)。专用工具可自动化清理流程,适合新手或不熟悉命令行的用户:
sudo apt install bleachbit,命令行:bleachbit --clean system.cache system.tmp)。sudo apt install stacer)。sudo apt install ubuntu-cleaner)。若使用SSD,可通过fstrim命令释放未使用的块,提升性能:
fstrim /mount_point:向SSD发送TRIM命令(/mount_point为SSD挂载点,如/),建议每月运行一次(部分发行版会自动启用定期TRIM)。rm -rf:该命令会强制删除文件及目录,无法恢复,建议先使用ls命令确认目标。cron定时任务(如每周日凌晨2点清理临时文件),保持系统整洁。