我想知道是否有办法从 Ubuntu 19.10 中完全删除 snap,而不会失去安装 Chromium 等重要应用程序的能力。
当我最近更新到最新的 Ubuntu 版本时,我意识到安装程序以编程方式重新安装了 snap,尽管我之前手动删除了它。此外,安装程序删除了通过存储库安装的 Chromium,并通过 snap 重新安装。
由于各种原因我不想在我的机器上安装 snap,我的问题是是否有人知道一种安全的方法来删除它,并将 Chromium DEB 恢复到源头?
有 PPA 吗?我可以另外使用 Ubuntu 风格的源,它没有从其源中删除 Chromium Deb 吗?
2021 年 11 月更新:
看起来 Debian 安全团队正在 终止对 Chromium 的支持,这将给旧的安装留下 未修补的安全漏洞。
我将这篇文章留在原处,因为它描述了使用多个 debian 存储库的一般技术,但请为 Chromium 找到不同的来源。 可能的候选人:
Debian 回购拯救了一天!
(全文在这里)
Debian 仍然将 Chromium 作为其 APT 存储库中的常规软件包进行维护。我们可以配置 Ubuntu 以从那里获取它,并继续及时接收安全更新以及我们所有其他操作系统更新。从安全角度来看,这是有道理的,因为 Debian 是 Ubuntu 已经获得其大部分软件包的地方,并且是一个非常知名的备受瞩目的项目。无需冒险从某个随机来源安装软件或告诉您的系统信任 PPA。
强制性警告:这是完全不受支持的,并且可能会立即或将来导致问题。如果你弄坏了东西,那是你自己的错。
这是我在 Ubuntu 19.10 上所做的:
这使我所有已安装的 Ubuntu 软件包都处于最新状态,因此在我进行更改后更容易看到升级受到的影响。
再见,烦人的快照。
再见,假铬包。
chromium-chromedriver
(如果您的系统上未安装该软件包,您可以省略该部分。)这只是确保我创建的文件将被所有人读取,包括系统。
创建一个包含以下内容的
/etc/apt/sources.list.d/debian-stable.list
文件:这告诉 apt 不仅要在 Ubuntu 档案中查找软件包,还要在 Debian 稳定档案中查找软件包。这通常是个坏主意,因为您不希望数百个随机的 Ubuntu 软件包被替换为 Debian 版本,这很可能会破坏您的系统。但是,我们将添加一些规则来避免这个问题。
注意:由于该
/usr/share/keyrings/debian-archive-keyring.gpg
软件包,上面引用的文件以及其他几个 Debian 密钥环文件已经存在于我的 Ubuntu 系统上debian-archive-keyring
。它也可能已经在您的系统上,但如果没有,您应该安装它:sudo apt install debian-archive-keyring
创建一个包含以下内容的
/etc/apt/preferences.d/debian-chromium
文件:第一个节为 Debian Chromium 软件包分配低于正常的优先级;刚刚足够高以允许手动安装和自动更新它们,但还不足以比 Ubuntu 软件包更受欢迎。这称为 apt pinning,并在apt_preferences 手册中进行了描述。第二节为所有其他 Debian 软件包分配了非常低的优先级,因此它们只会在必要时自动安装或更新以满足依赖关系。
(如果我需要 Debian 的 Chromium 包来覆盖 Ubuntu,我想我可以为它们分配更高的优先级,但是由于它们使用不同的包名称,因此不需要覆盖。我也可以将所有 Debian 存储库固定在优先级 100;这将使任何仅 Debian 的依赖项都符合自动更新的条件,有效地将 Debian存储库视为手动安装模式下的Ubuntu Backports。我选择了更保守的方法只是为了谨慎起见。)
这会刷新包数据库,所以我的 Ubuntu 系统现在知道我添加的 Debian 档案中的所有内容。
这向我展示了系统范围的软件包升级会做什么,而无需实际执行。由于我在进行任何更改之前已经进行了升级,因此我不希望在此处看到任何可升级的软件包。
如果列出了一两个可升级包,这可能意味着 Ubuntu 在我工作时碰巧发布了一些更新,这是正常的。在继续之前,我会询问每个更新的来源,使用
apt policy package-name
. 如果其中任何一个来自 Debian 档案,我会考虑通过删除我创建的文件并sudo apt update
再次运行来恢复我的更改。如果列出了许多可升级的软件包,这可能意味着 apt 现在认为 Debian 的软件包是 Ubuntu 的软件包的有效替代品,我不想要。如果我在创建的那些文件中犯了错误,就会发生这种情况。我会通过删除我创建并
sudo apt update
再次运行的文件来恢复我的更改。然后我可能会考虑重新开始并更仔细地打字。此时一切都很好(没有列出可升级的包),所以我继续。
然后包管理器让我确认,列出了 Chromium 和 Chromium 所需的少量依赖包。再一次,如果这里列出了许多包,我会调查并考虑恢复我的更改。(无论如何,我都调查了每个依赖项,因为我很小心,发现只有一个依赖项来自 Debian 存档:
libjpeg62-turbo
,并且它与我安装的任何东西都没有冲突。)一切看起来都很好,所以我告诉包管理器继续。完成后,Chromium 最终被安装为一个 apt 包。谢谢,Debian 维护者!
我不使用任何快照,所以我做的下一件事是查看
snap
我的主目录中的目录,确保那里没有我需要的任何内容,然后将其丢弃到垃圾箱中。如果您想这样做,请首先考虑自首次安装 snap 以来您在 Chromium 中创建/修改/保存的任何用户数据都位于该 snap 文件夹下的某个位置。(可能snap/chromium/current/.config
在大多数文件管理器中默认隐藏在它下面。)您可能想要备份它或将其移动到 chromium 的常用数据目录:$HOME/.config/chromium
. 就我而言,我想保留的 Chromium 数据仍然在其旧/通常的位置,因为我只使用了大约五分钟的 snap。而已。我希望它可以帮助某人。如果它损坏了你的系统,偷了你的自行车,和你的男朋友跑了,或者做了其他你不喜欢的事情,那么我很抱歉,但这仍然是你自己的责任。
祝你好运!
添加回购
更改
eoan
为disco
_/etc/apt/sources.list.d/chromium-team-dev.list
如果文件不存在或为空,则粘贴:
然后更新
查看
安装
从理论上讲,我并不反对 snap,但是向我的挂载、进程和文件系统发送垃圾邮件实在是太过分了。在铬也被推到我身上之前,我只将它用于一件事(微型编辑器)。(在 20.04 中也不再需要 micro 了。)
删除 snap*,并防止其返回:
安装 Chromium、dev 或 beta:
微编辑器 - < 20.04 Focal 之前
微编辑器 - >= 20.04 Focal 之后
这个 PPA 似乎非常适合这个目的:https ://launchpad.net/~saiarcot895/+archive/ubuntu/chromium-dev这是开发分支,但除此之外,它是完美的。
与上面的森林示例类似,我做了以下操作:
您可以在此处下载适用于 Ubuntu 20.04 LTS (Focal)、21.04 (Hirsute) 和 21.10 (Impish) 的最新官方 .deb 版本: https ://launchpad.net/~phd/+archive/ubuntu/chromium-browser/
这是一个 PPA 存储库,其中包含最初为 Ubuntu 18.04 LTS (Bionic) 发布的官方 Ubuntu 软件包,并在新版本发布后立即更新。
您可以使用 APT 为 Chromium 添加存储库。然后你根本不需要 snapd。