如何进行Ubuntu磁盘空间深度清理?
近期使用AutoDL算力云,发现系统盘只有30G,数据盘只有50G,跑一个稍微大一点的模型,马上空间就拉爆了,现在做一个磁盘深度清理操作,看看效果。 清理前磁盘占用如下:
在 Ubuntu 系统中进行磁盘深度清理,可以通过清理不再使用的缓存、日志、孤立的包和旧的内核文件等方式,来释放大量磁盘空间。以下是步骤指南,帮助你进行深度清理。
一、清理APT缓存
APT 会缓存所有安装的 .deb
包,这些文件通常不需要长期保存。你可以使用以下命令清理 APT 缓存:
sudo apt clean
此命令将删除缓存目录 /var/cache/apt/archives
中存储的所有软件包文件。
如果你想删除过时的 .deb
包,保留最新版本,可以使用:
sudo apt autoclean
二、删除不再需要的依赖包
当你卸载软件时,有些依赖包可能不会自动删除。可以使用以下命令来清理这些不再使用的包:
sudo apt autoremove
三、清理旧的内核
Ubuntu 会保留多个内核版本更新后,有时会占用大量空间。你可以删除旧的、不需要的内核版本:
sudo apt --purge autoremove
此命令不仅删除旧内核,还会删除不再需要的相关包。
四、清理日志文件
日志文件可能会占用大量磁盘空间,特别是如果它们变得过大。你可以通过以下命令来清理日志文件:
sudo journalctl --vacuum-size=100M
五、conda历史包和JupyterLab的回收站
以下两个是可以直接删除,不影响系统运行的目录,所以首先直接删除。如果未能释放空间,继续查看下文(这个直接删除了11G)
# conda的历史包
du -sh /root/miniconda3/pkgs/ && rm -rf /root/miniconda3/pkgs/*
# jupyterlab的回收站
du -sh /root/.local/share/Trash && rm -rf /root/.local/share/Trash
六、tmp目录检查
以下目录是可能占用较大空间,但需要您根据实际情况清理的目录:
du -sh /tmp/
du -sh /root/.cache
清理 /tmp
目录时要小心,某些系统进程可能在 /tmp
中创建了必要的临时文件,特别是在系统运行时。如果系统需要 /tmp
中的某些文件,建议在非高负载时间段进行清理,或考虑重启系统后再清理。
sudo rm -rf /root/.cache/.[!.]*
:
缓存文件通常是可以安全删除的,因为它们通常会被自动重新生成。删除隐藏文件和文件夹,保留 .
和 ..
,它们分别代表当前目录和上级目录。
sudo rm -rf /root/.cache/*
sudo rm -rf /root/.cache/.[!.]*
七、正常清理步骤
首先查看文件和目录的使用空间,系统/根目录下的文件夹一般情况不会占用大的磁盘空间,因此可主要查看您创建的目录或文件等
1. 文件大小
使用ls -alh
命令来查看,比如下方的.bashrc
、.profile
文件的大小。但是看到的文件夹大小仅仅是文件夹本身大小,并非文件夹下所有文件的大小。
2. 文件夹大小
使用du -sh xxx
命令,递归统计该文件夹下所有文件的大小
3. 删除
使用rm -rf xxx
来删除文件/文件夹,释放空间
4. AutoDL中不占用系统盘空间的特殊文件夹
/root/autodl-tmp # 此为AutoDL数据盘
/root/autodl-nas
/root/autodl-pub
/root/autodl-fs
## 数据不想要了,全部清理
在实例「更多」操作中,点击「重置系统」,系统盘将被清空
总结
这些步骤可以帮助你进行深度的 Ubuntu 磁盘清理,并释放大量磁盘空间。记得定期清理不再需要的文件和缓存,以保持系统的高效运行。这个操作将系统盘从19G降到了13G,节省了18%系统盘空间。