apt-get 与 aptitude .vs synaptic 兼容性

apt-get 与 aptitude .vs synaptic 兼容性

作为前 Debian 用户,我“有点”记得我应该只使用其中一个包管理器...要么apt-getaptitude要么synaptic,但不能将这三个结合起来,因为可能会发生冲突,它们不能很好地混合在一起。

我不知道我在哪里听过这个,但它留下了记忆印记。所以我只想问你,这是否真的不建议,或者这只是一个都市传说,而且是完全安全的。你能证实这一点吗?

安装包的最干净的方法是否仍然是使用checkinstall调用之前的命令dpkg

答案1

所有这些都用作dpkg后端。两者都不使用任何专用数据库,因为使用其他数据库时数据库会崩溃。

这绝对是都市传说。

如果你想从源代码安装某些东西,最干净的方法是使用checkinstall,或将其安装到/usr/local。使用包管理器更好,因为这样删除该包就容易多了。

答案2

唯一真正的区别是能力。

  • 如果您使用它以交互方式安装某些东西,然后在其他东西中删除该包,然后返回 Aptitude,它会认为您想重新安装它。您只需在加载时清除选择(通过菜单很容易)。

  • 它还将运行自动删除,以便清除旧的依赖项。这如果您不小心删除了元包的依赖项,并且删除了它及其所有依赖项,则很危险。如果您知道自己在做什么,这不是问题。

答案3

Synaptic 和 apt-get 兼容。Aptitude 与 synaptic 不兼容。这是事实,而不是另一位发帖者声称的“都市传说”。

今天我想找出我的系统有哪个 Java 运行时。谷歌搜索出现了以下建议:在命令 shell 中,输入:

能力搜索“?提供(java-runtime)”

这生成了以下内容(以及其他行):

pi gcj-4.4-jre
pi gcj-jre

“pi” 的意思是它目前尚未安装,但已标记为可安装。因此,如果我进入 aptitude 并要求它安装所需的软件包,它将安装 gcj-4.4-jre。然而,在 Synaptic 中,它既未安装也未标记为可安装。如果我要求 Synaptic 安装所需的软件包,它什么也不做。

我不是这方面的专家,而且我不知道 aptitude 将它的包状态概念存储在哪里,但很明显它与 Synaptic 不兼容。

相关内容