包管理器有什么区别?


129

,,和之间有什么区别apt-get,对于正常的日常包裹管理,建议选择哪个?aptitudesynaptic

这是一个基本的问题,但是我认为在站点上可以得到很好的信息,此外,我对Ubuntu还是比较陌生,因此可以使用专家的解释。


1
我也看到有人推荐taskel。也许有人可以解释这也有什么好处?
silvo 2010年

2
tasksel用于选择特定任务,而不用于安装J. Random Package。
lfaraone 2010年

的[优秀比较] [1],apt-getaptitude特别提及了我最喜欢的前端wajig。[1]:unix.stackexchange.com/questions/767/...
tshepang

对于更详细的比较apt-get,并aptitude看到这个网站的其他问题- 是真的资质优于apt-get的?
8128

Answers:


111

可能最受欢迎的软件包管理器是apt-get,aptitude,synaptic和Software Center。还有其他的东西(Linux Mint有它自己的,还有一些是为KDE设计的),但是这些是您经常遇到的。

apt-get是一个简单的命令行工具。如果您知道要安装的软件包的确切名称,并且不想花费时间单击GUI来获取它,这将很方便。

aptitude与apt-get非常相似,我听说它在处理疯狂的依赖情况时会更好。哪一个真正更好是值得商bat的。

突触是低级GUI。如果您是高级用户,但对命令行实用工具不满意,则这是一个不错的选择。

软件中心是一个非常高级的,新用户友好的GUI。软件分类很好,因此,如果您不确定要使用的应用程序,则可以快速找到所需的应用程序。软件中心也很突出,它是此列表中唯一允许您购买商业应用程序的软件包管理器。

dpkg是大多数基于Debian的系统使用较少的低级软件包管理器标准。实际上,apt-get,aptitude,synaptic和Ubuntu软件中心都只是dpkg或apt的前端,而apt本身就是dpkg的前端。

在回答您的问题“对于正常的日常软件包管理,建议选择哪个”时,我想建议将Software Center用于大多数用途。但是,随着您获得更多的经验,您会发现较低级别的软件包管理器的某些功能很有用。


我想知道此时Synaptic的意义是什么。想要lib的人使用命令行,而想要程序的人使用软件中心?
mlissner

老实说,我很少再使用Synaptic了,目前我还没有想到有什么特殊的原因会在其他工具中使用Synaptic(尽管我有时会使用)。好问题。
Michael Crenshaw,2010年

10
aptitude vs apt-get尚无定论,aptitude是对apt-get的改进,并且与apt-get完全兼容。
Mircea Chirea

1
我没有辩论的知识,但是我已经看到其他人对此进行辩论。据我所知,这值得商bat。至于兼容性,我听说最好不要同时使用两者。但是我也不知道。我将再提一个问题。:-)
Michael Crenshaw 2010年

3
aptitude允许高级软件包管理功能,例如apt-get缺乏的软件包保存。
斯科特,2010年

18

Debian的常见问题有不同的包管理器的一个很好的解释。(dpkgapt-getaptitudetaskselsynaptic


1
尽管此链接可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。如果链接的页面发生更改,仅链接的答案可能会失效。- 评分
Pilot6

1
七年后?
lfaraone

13

作为除了mac9416的出色答卷,Kubuntu的提供了相同的命令行工具作为Ubuntu的,即dpkgapt-getaptitude。还有两个图形化软件包管理器:

Adept是的简单易用的GUI apt-get,可让您编辑源列表,按类别或名称浏览软件包,查看其状态以及安装/卸载它们。

KPackageKit是PackageKit的简单GUI,PackageKit是在apt-get后台使用的较新的交叉分发程序包管理系统。它使您可以按照各种条件搜索程序,安装和卸载程序,进行例行升级以及编辑源列表。


KPackageKit现在由代替Apper
David你的朋友

6

我个人更喜欢apt-get,因为它是一个命令行程序。而且安装软件包的语法非常简单:

sudo apt-get安装软件包名称

我每天都会使用apt-get来安装和删除软件包。

Synaptic是基于GUI的,而aptitude是基于文本的。


aptitude也可以交互使用,并且很长一段时间以来,大多数其他libapt客户端都缺少这些功能。 sudo aptitude install效果和sudo apt-get installsudo apitude search效果和sudo apt-cache search。但是,Aptitude计划在将来删除。
Broam,2010年

@Broam您能否提供声称将要删除Aptitude的消息来源?谷歌搜索我什么都找不到。
itsadok

它打算在默认安装中删除,例如GIMP。
Broam 2010年


5

基本上,它们只是在低级别上有所不同。

dpkg:甚至不是适当的软件包管理器,apt都使用它

apt-get:命令行,仅当您知道软件包名称时

资质:基于文本,但用户友好

突触:相当于GUI中的智能

软件中心:面向日常用户

顺便说一句,这些都是apt的前端(dpkg除外),后者是Ubuntu上唯一的软件包管理器。


1

很少有人提及的另一种工具是tasksel。它用于选择特定任务,标记它们以进行安装,然后安装它们(可能使用aptitude-不确定)。

奔跑tasksel --list-tasks看看有哪些任务可用。


关于这个问题的评论实际上提到了这一点。
David Z

1
@david我看到了提到的内容,但评论是二等公民。
tshepang 2011年

1

上面已经忽略了aptitude和apt-get之间的一个关键区别是aptitude,与apt-get不同,如果有依赖项冲突,它将为您提供不同的选择。apt-get只会失败。aptitude因此,它更加灵活和通用。从来没有使用过GUI软件包管理器,我不知道Synaptic和其他人如何处理这种情况。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.