在 Ubuntu 中,“清理旧版本软件”通常包含几个方面:清理更新后残留的依赖包、清除软件安装缓存、删除旧的系统内核,以及清理像 Snap/Flatpak 这类保留历史版本的安装包。
以下是分步骤的清理指南,你可以根据需求选择执行:
当系统更新或卸载软件后,经常会留下一些不再被需要的依赖包和下载缓存。
--purge 彻底清除配置文件):sudo apt update
sudo apt autoremove --purge
.deb 安装包文件):
autoclean:只删除过期的、无法再下载的旧缓存;clean:删除所有本地缓存的 .deb 文件,释放空间最彻底。sudo apt autoclean # 温和清理
sudo apt clean # 彻底清空缓存
如果你明确知道某个软件不再需要,可以将其彻底卸载:
# 卸载软件并删除配置文件
sudo apt purge 软件包名
# 卸载后再执行一次自动清理
sudo apt autoremove --purge
提示:如果你是通过 PPA 安装的软件,卸载后想删除该 PPA 源,可以使用 sudo add-apt-repository --remove ppa:xxx/xxx,或者安装 ppa-purge 工具。
Ubuntu 在更新内核时,默认会保留旧内核以防新内核无法启动。时间久了会占用几个 GB 的空间。
uname -r
autoremove 通常会自动保留“当前内核”和“最新的一个备用内核”,删除其余极旧的版本:sudo apt autoremove --purge
dpkg --list | grep linux-image
然后用 purge 删除除了当前内核和最新内核之外的版本(请将下面的版本号替换为你查到的旧版本):sudo apt purge linux-image-5.15.0-xx-generic linux-headers-5.15.0-xx
如果你使用 Ubuntu 自带的 Snap 商店或 Flatpak 安装软件,它们默认会保留旧版本。
Snap 默认保留 2-3 个旧版本,你可以使用以下命令查看并清理:
# 查看所有 Snap 包及版本
snap list --all
# 手动删除某个软件的特定旧版本(将 name 和 revision 替换为实际值)
sudo snap remove 软件名 --revision=旧版本号
(如果你觉得麻烦,也可以安装 snapd 的清理脚本,或者调整 snap refresh 的保留数量配置。)
Flatpak 有非常简单的命令来清理未使用的运行环境和旧版本:
flatpak uninstall --unused
如果你想要更全面地查找“孤儿软件”(即没有任何软件依赖它,但依然留在系统里的包):
deborphan 查找孤儿包:sudo apt install deborphan
deborphan
sudo apt purge $(deborphan)
BleachBit(适合桌面用户,但需谨慎勾选):sudo apt install bleachbit
sudo bleachbit # 运行后以管理员权限清理,注意不要勾选会破坏系统的选项(如某些内核或关键日志)。
uname -r 确认。rm -rf:不要手动去 /usr 或 /lib 里直接删除文件,应使用包管理器(apt/snap/dpkg)来卸载。purge 命令会永久删除配置文件,请确保已备份。通常来说,只需要定期执行 sudo apt update && sudo apt autoremove --purge && sudo apt clean,就能保持 Ubuntu 系统的整洁和无用软件的清理。