![我在 apt 和 snap 上都安装了 python 3 - 我应该删除其中一个吗?](https://linux22.com/image/927156/%E6%88%91%E5%9C%A8%20apt%20%E5%92%8C%20snap%20%E4%B8%8A%E9%83%BD%E5%AE%89%E8%A3%85%E4%BA%86%20python%203%20-%20%E6%88%91%E5%BA%94%E8%AF%A5%E5%88%A0%E9%99%A4%E5%85%B6%E4%B8%AD%E4%B8%80%E4%B8%AA%E5%90%97%EF%BC%9F.png)
我刚刚从 16.04 升级到 20.04,我读到有一个新的包管理器叫做snap
。但我还有apt
。此外,当我这样做时
snap list
我看到一个名为 python3 的软件包,版本为 3.8.0,由一个名为“om26er”(不知道是谁)的发布者发布。
直到今天早上我才知道 snap 的存在;我当然没有亲自通过 snap 安装任何东西。这个 python 安装是如何进入我的计算机的?我应该如何在不损坏系统的情况下将其删除?
apt
更一般地说:我对自己同时拥有和感到很困惑snap
。这两个包管理器如何协同工作?我应该只使用其中一个而不使用另一个吗?抱歉,这是新手的问题 - 我想要的只是一个稳定的系统,这样我就可以重新开始工作了。
答案1
你当然应该不要删除常规的 python3 包来自 APT 包管理系统。Ubuntu 系统的操作依赖于它,如果您删除它,甚至升级它,您的桌面都会被破坏。
你可以删除 snap 版本如果您愿意的话。选择权在您手中。当然,此软件包尚未自动安装。如果您没有自己明确安装它,它最多可能作为另一个 snap 软件包的依赖项安装。
APT 和 snap 彼此独立工作。Snap 在设计上是自包含的,因此它们可以在一系列 Linux 系统上运行。与 APT 软件包相比,snap 的一个可能优势是它允许您运行某个应用程序的较新版本,而不是通过 Linux 发行版的软件包随系统提供(并绑定到系统)的版本。一些使用其他工具包(例如 KDE 应用程序)或专有软件的软件可以通过 snap 安装,1)方式方便,2)无需更改或将文件混入主系统。有关为什么使用 apt 或 snap 的更多信息,可以在本网站的其他地方找到,例如这里或者这里。
答案2
如果您卸载 Python 3 snap 包,Ubuntu 将使用默认安装在 Ubuntu 20.04 中的 Python 3 apt 包,但不要删除 Python 3 apt 包,否则许多依赖它的应用程序(例如终端和软件应用程序)将无法运行。
如果 Python apt 和 snap 管理器同时安装,它们不会互相干扰,因为 snap 包 Python 解释器只能通过以下形式的命令启动。snap run python38