更新系统

sudo apt update
sudo apt upgrade

清理软件

卸载不需要的软件

列出所有已安装的软件包,检查是否有不再需要的软件。

dpkg --list

另一种方法是使用 dpkgawk 命令,可以按软件包大小排序:

dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | awk '{print $1/1024 " MB\t" $2}'

这个命令的处理步骤如下:

  • dpkg-query -Wf '${Installed-Size}\t${Package}\n':列出所有已安装的软件包及其占用的磁盘空间。
  • sort -n:按照磁盘空间大小排序。
  • awk '{print $1/1024 " MB\t" $2}':将千字节转换为兆字节(MB)以便于阅读。

卸载例如 zoom

sudo apt remove --purge zoom

自动删除不再需要的依赖

有时候,系统会保留已经不再需要的依赖包,你可以使用以下命令自动删除这些包:

sudo apt autoremove

清理本地缓存

系统会缓存已下载的软件包以供以后使用。你可以清理这些缓存以释放磁盘空间:

sudo apt clean

如果你希望清理更详细的缓存,包括旧版本的软件包,可以使用:

sudo apt autoclean

清理已卸载软件的残留配置文件

有些软件卸载后,可能会留下配置文件。你可以通过以下命令查找并清理这些残留的配置文件:

sudo dpkg -l | grep '^rc' | awk '{print $2}' | xargs sudo apt purge

清理文件

清理系统日志

系统日志文件可以占用大量磁盘空间。你可以使用以下命令查看日志文件的大小,并手动删除或清理不再需要的日志:

sudo du -sh /var/log
sudo rm -rf /var/log/*.log

清理日志文件

系统日志文件可能会随着时间的推移积累大量数据。你可以手动清理或使用以下命令清理日志文件:

sudo journalctl --vacuum-time=7d

清理过时的应用程序快照(Snap)

如果你使用 Snap 安装应用程序,旧版本的快照可能会占用大量空间。使用以下命令可以清理旧版本的 Snap:

sudo snap remove --purge $(snap list --all | awk '/disabled/{print $1, $3}')

清理缩略图缓存

图像和视频的缩略图会在用户目录下的 .cache/thumbnails/ 中缓存。你可以使用以下命令清理这些缓存:

rm -rf ~/.cache/thumbnails/*

删除不需要的大文件

检查你的用户目录下是否有大文件或文件夹,你可以使用以下命令查找系统中占用较大空间的文件:

sudo du -h / 2>/dev/null | grep '[0-9\.]\+G' | sort -nr | head -n 20

清理挂载点中的临时文件

系统可能会在 /mnt/media/tmp 等目录中积累临时文件。定期检查并清理这些目录,可以使用以下命令清理 /tmp 目录:

sudo rm -rf /tmp/*

删除不再需要的用户数据

如果你有不再需要的用户数据或文件,可以手动删除这些文件。

清理旧内核

在 Linux 系统中,每次更新内核时,旧的内核可能不会自动删除。可以使用以下命令列出所有已安装的内核,并选择性地卸载旧内核(保留当前和备用内核):

dpkg --list | grep linux-image

然后,使用以下命令卸载旧内核(将 linux-image-<version> 替换为实际的旧内核版本号):

sudo apt remove linux-image-<version>

Python

删除不用的python包

首先,获取所有包的路径:

cat /tmp/requirements.txt | cut -d "=" -f 1 | xargs -n1 pip show | grep -E 'Location:' | awk '{print $2}' | sort -u > /tmp/package_paths.txt

然后,计算每个路径下的实际大小:

while IFS= read -r path; do
  echo "$path"
  du -sh "$path"/*
done < /tmp/package_paths.txt | sort -hr

删除不用的python版本

如果你是通过 Homebrew 安装的 Python,可以使用 Homebrew 来卸载:

brew list | grep python

这会列出所有与 Python 相关的包。然后使用:

brew uninstall python@3