温馨提示×

Linux下如何清理系统垃圾

小樊
46
2025-10-04 15:29:57
栏目: 智能运维

一、清理软件包缓存
软件包缓存是系统安装软件时下载的临时文件,占用大量磁盘空间。根据发行版选择对应命令:

  • Debian/Ubuntusudo apt-get clean(清除所有已下载的包文件)、sudo apt-get autoclean(仅清除无法再获取的旧包)、sudo apt-get autoremove(自动移除不再需要的依赖包);
  • Fedora/CentOS/RHELsudo dnf clean all(清除YUM/DNF缓存)、sudo dnf autoremove(移除孤立依赖);
  • Arch Linuxsudo pacman -Scc(清除所有包缓存)、sudo pacman -Rns $(pacman -Qdtq)(移除孤立依赖)。

二、清理临时文件
临时文件存放在/tmp(系统临时目录)、/var/tmp(长期临时目录)和用户主目录的~/.cache/(用户级缓存),定期清理可释放空间:

  • 手动删除sudo rm -rf /tmp/*(系统临时文件)、sudo rm -rf /var/tmp/*(长期临时文件)、rm -rf ~/.cache/*(用户缓存);
  • 自动清理:使用systemd-tmpfiles工具(需配置/etc/tmpfiles.d/cleanup.conf,如d /tmp 1777 root root -表示7天后清理/tmp目录),或tmpwatch 7d /tmp(清理7天未访问的临时文件)。

三、清理系统日志
系统日志(如/var/log/目录)会随时间增长占用大量空间,可通过以下命令清理:

  • 限制日志大小sudo journalctl --vacuum-size=500M(将日志限制为500MB);
  • 清理旧日志sudo journalctl --vacuum-time=2weeks(保留最近2周的日志);
  • 删除旧日志备份sudo find /var/log -type f -name "*.log.old" -delete(删除.log.old后缀的旧日志)。

四、清理用户缓存
用户日常使用软件(如浏览器、办公软件)会生成缓存文件,存放在~/.cache/目录:

  • 手动清理rm -rf ~/.cache/*(删除所有用户缓存);
  • 浏览器缓存:通过浏览器设置(如Chrome的“清除浏览数据”、Firefox的“隐私与安全”)清理缓存。

五、清理旧内核版本
系统更新时会保留旧内核,占用磁盘空间。可通过以下命令清理:

  • Debian/Ubuntudpkg -l | grep linux-image(列出所有内核)、sudo apt-get remove --purge $(dpkg -l 'linux-image-*' | awk '{print $2}' | grep -v $(uname -r))(删除除当前内核外的旧内核);
  • Fedora/CentOSsudo dnf remove kernel-$(uname -r --kernel-release | sed 's/-generic//')(删除旧内核,保留当前版本)。

六、使用图形化工具(适合新手)

  • BleachBit:跨平台清理工具,支持清理缓存、临时文件、日志等。安装:sudo apt-get install bleachbit(Debian/Ubuntu)、sudo dnf install bleachbit(Fedora),运行后选择清理项目即可;
  • GNOME磁盘分析器:可视化查看大文件,帮助定位垃圾文件。打开方式:gnome-disks(GNOME桌面环境自带)。

七、清理Docker残留(若有使用Docker)
Docker未使用的镜像、容器和卷会占用大量空间,可通过以下命令清理:

  • docker system prune -a(清理所有未使用的镜像、容器和网络);
  • docker volume prune(清理未使用的卷)。

注意事项

  • 执行删除操作前,务必确认文件重要性(如/var/log/中的关键日志),避免误删;
  • 使用rm -rf命令时需谨慎,建议先使用ls命令查看目标文件;
  • 定期清理(如每月1次)可保持系统整洁,避免垃圾文件堆积影响性能。

0