从Ubuntu22.04开始,Ubuntu加大采用Snap 软件包的形式分发更多应用程序,但snap应用一般比较臃肿,启动稍慢;除非万不得已,不建议使用。此外,系统自带的软件如麻将游戏、远程桌面等等,永远也用不上,因此ufans.top给出卸载方法,且确保不产生后遗症或者万一哪天反悔可以恢复的方法。
注意 1:开始之前,请备份您的应用程序数据,例如 Firefox 书签。请注意,按照本教程操作后,Ubuntu 软件中心和 App Center 也将被移除。
注意 2:本教程已在 Ubuntu 22.04 和 Ubuntu 24.04 上测试通过。其它官方发行版供参考,例如 XUbuntu、KUbuntu 等。
一、移除 Snap 应用程序和守护进程
按键盘上的 Ctrl+Alt+T 打开终端窗口。打开后,依次运行以下命令。
1) 列出所有已安装的 Snap 应用程序:
snap list
默认情况下,它们包括 Snap Store(Ubuntu 软件中心)、Firefox、默认主题和一些核心软件包。
2) 逐个移除应用程序,首先移除 Firefox 和 Snap-store,然后是主题包、GNOME 平台(在沙盒中),最后是基础包和 snapd 守护进程。注意:软件包名称可能因“snap list”的输出而异。
sudo snap remove --purge firefox
sudo snap remove --purge snap-store
sudo snap remove --purge gnome-42-2204
sudo snap remove --purge firmware-updater
之后依次运行 snap remove 命令移除“gtk-common-themes”、“snapd-desktop-integration”、“bare”、“core20”以及最后的“snapd”。
3) 最后通过 apt 移除 Snap 守护进程包:
sudo apt remove --autoremove snapd
二、阻止 Snap 包(可选)以及恢复Snap 包(可选)
完全移除 snap 包后,您可以通过降低 Snapd 包的优先级来阻止 Ubuntu 重新安装它们。以下方法借鉴了 Linux Mint 20 的做法。也可以完全不理会,系统不会自动启用snap。
1)按下键盘上的 Ctrl+Alt+T 打开终端。终端打开后,运行以下命令创建并打开配置文件:
sudo gedit /etc/apt/preferences.d/nosnap.pref
对于 Ubuntu 24.04,请将 gedit 替换为 gnome-text-editor。对于非 GNOME 桌面环境,请使用系统文本编辑器或 nano 编辑器(Ctrl+S 保存,Ctrl+X 退出),这些编辑器适用于所有桌面环境。
文件打开后,粘贴以下几行代码,以阻止从任何软件源安装 snapd:
# To prevent repository packages from triggering the installation of snap,
# this file forbids snapd from being installed by APT.
Package: snapd
Pin: release a=*
Pin-Priority: -10
2)保存文件后,使用以下命令刷新软件包缓存:
sudo apt update
现在,无论何时尝试安装 Snap 软件包或守护进程,都会输出“依赖项未满足 (snapd)”或“软件包没有可安装候选版本”的错误信息。
如何恢复:
如果您改变主意,可以随时运行以下命令重新安装 Snap 应用。
首先,在终端 (Ctrl+Alt+T) 中运行以下命令以解除对守护进程的阻止:
sudo rm /etc/apt/preferences.d/nosnap.pref
然后,使用以下命令安装 Ubuntu 软件中心:
sudo snap install snap-store
如果需要,还可以运行以下命令安装 Firefox(使用 snap):
sudo apt install firefox
三、卸载ubuntu系统自带不常用软件
以卸载libreoffice为例,使用指令:
sudo apt-get remove --purge libreoffice*
卸载其他不常用软件,将软件名称改为其名称即可,常见不常用软件名称如下:
- libreoffice:libreoffice-common
- 雷鸟邮件客户端:thunderbird
- 自带的播放器:totem
- 自带的音乐播放器:rhythmbox
- 对对碰游戏:gnome-mahjongg
- 纸牌游戏:aisleriot
- 扫雷游戏:gnome-mines
- 数独游戏:gnome-sudoku
- 远程连接软件:remmina
- 茄子相机:cheese
- BT 客户端:transmission-common
最后执行如下指令清理不要的依赖包:
sudo apt-get autoremove
完毕。