一、基础磁盘空间检查工具 在清理前,需先了解磁盘空间使用情况,常用命令如下:
df -h:以人类可读格式(GB/MB)显示各挂载点的磁盘使用情况,重点关注Use%列(使用率),若接近100%则需清理。du -sh /path/to/directory:统计指定目录的总大小(如du -sh /home查看用户目录大小),帮助定位占用空间大的目录。ncdu(基于文本的交互式工具):安装后(sudo apt install ncdu),运行ncdu /可直观查看目录大小,并支持键盘导航删除文件,比du更易操作。二、系统自带包管理器缓存清理 包管理器的缓存会占用大量空间,定期清理可释放资源:
sudo apt clean:彻底清理所有APT缓存(包括已下载的安装包);sudo apt autoclean:仅清理旧的安装包(保留当前可用的包)。sudo dnf clean all(Fedora/CentOS 8+)或sudo yum clean all(CentOS 7及以下):清理YUM/DNF缓存;sudo dnf autoremove(或sudo yum autoremove):删除不再需要的依赖包。sudo pacman -Sc:清理未安装软件的缓存;sudo pacman -Scc:彻底清理所有缓存(谨慎使用,会删除所有下载的安装包)。三、临时文件与日志清理 临时文件和日志是磁盘空间的“常驻大户”,需定期清理:
/tmp目录:存放系统临时文件,可直接删除(sudo rm -rf /tmp/*);rm -rf ~/.cache/*(删除当前用户的缓存)、rm -rf ~/.local/share/Trash/*(清空回收站)。journalctl管理系统日志:sudo journalctl --vacuum-time=2weeks(保留最近2周的日志)、sudo journalctl --vacuum-size=1G(限制日志大小不超过1GB);sudo find /var/log -type f -name "*.log" -exec truncate -s 0 {} \;(清空所有.log文件,谨慎使用,可能导致部分服务无法记录日志)。四、大文件查找与删除 找出系统中占用空间大的文件(如旧视频、备份文件),针对性清理:
find命令:
find / -type f -size +100M -exec ls -lh {} \;(-type f表示文件,-size +100M表示大于100MB,-exec ls -lh {} \;显示文件详情);find / -type f -empty -delete(删除所有空文件)。五、第三方命令行清理工具
sudo bleachbit),通过命令行界面选择清理项目(如系统缓存、临时文件、日志),支持自定义清理规则。shred -n 3 -z -v /path/to/file(-n 3表示覆盖3次,-z表示最后用零覆盖,-v显示进度);/dev/sdb):sudo shred -n 1 -z -v /dev/sdb(谨慎使用,数据不可恢复)。六、SSD优化(fstrim命令)
若使用SSD,定期运行fstrim可释放未使用的块,提升性能并延长寿命:
sudo fstrim /(针对根分区),建议每月运行一次,或添加到cron任务(如0 3 * * * sudo fstrim /,每天凌晨3点执行)。
七、注意事项
rm -rf:该命令会强制删除目录及内容,尤其是/、/home等系统目录,可能导致系统崩溃;apt clean、journalctl --vacuum-time=2weeks)添加到cron任务,定期自动执行。