【译】5个对Linux新手来说最好的包管理器

译者按:作为Linux新手来说,选择一个Linux发行版、熟悉Linux系统,无论做什么都离不开软件的安装与卸载。那么,软件包管理器的相关知识就显得非常重要了。下面,我们就一起来看看这5大最适合新手的包管理器吧。

Linux中的包管理器可以说是非常重要,了解如何使用多种多样的包管理器可以大幅度地节省管理员的时间,因为从软件源下载/安装软件,升级,解决依赖问题,卸载软件。。。。。。这些技能对于Linux系统管理员来说是至关重要,也不可或缺的。

所以说,想要成为一个Linux的高手,了解各大主流发行版都是怎样管理软件包是非常有意义的。而在这篇文章中,我们可以会概览一下你能在Linux中找到的一些非常优秀的包管理器。

这里我们只讨论一些最好的包管理器,但是具体他们是如何工作,又该怎么使用,这就留待读者自行探索啦。当然我也会提供一些十分棒的链接,来列出几个相应的指导和其他的什么。

1.DPKG Debian Package System(Debian的包管理系统)

Dpkg 是一个Debian系统家族非常基础的包管理系统,它被用来给.deb的包提供安装,卸载,保存和查看信息的功能。

它是个底层的工具,所以这里列出了几个前端的,帮助我们更好的从远端软件源获取软件包,并解决复杂的依赖关系的工具,他们包括:

  • APT(Advanced Packaging Tool)

这是个非常流行,并且开放、强劲有效的前端命令行包管理系统。

Debian和基于它的发行版例如Ubuntu、Linux Mint 的用户,应该对此非常熟悉了。

要了解它们到底是怎么工作的,你可以参考这些指南:

15 Examples of How to Use New Advanced Package Tool (APT) in Ubuntu/Debian (这个URL是:http://www.tecmint.com/apt-advanced-package-command-examples-in-ubuntu/)

25 Useful Basic Commands of APT-GET and APT-CACHE for Package Management (这个的URL是:http://www.tecmint.com/useful-basic-commands-of-apt-get-and-apt-cache-for-package-management/)

  • Aptitude Package Manager

这也是一个流行的Debian家族下的前端命令行包管理系统,它的工作形式十分类似于APT,关于它们的好坏,有着很多的说法也有很多的比较结果,不过,我想,亲自尝试它们,才是了解“到底那个好”的真正办法。

译者注:由于Aptitude比APT了解更多信息,或许它更适合于软件的安装卸载。

它最开始是为Debian和它的衍生版本准备的,但是现在已经延伸到了RHEL家族中。你可以查看以下链接来对APT和Aptitude有个更深的了解 What is APT and Aptitude? and What’s real Difference Between Them? (这个URL是:http://www.tecmint.com/difference-between-apt-and-aptitude/)

  • Synaptic Package Manager

Synaptic是一个GUI(图形化)的基于GTK+的包管理工具,它基于APT制作。它可以很好帮助那些“不想被命令行弄脏了手”的人(原作者嘲讽脸)。它提供和apt-get一样的功能。

2. RPM (Red Hat Package Manager)

这是个LSB(Linux Standard Base)格式打包的基础包管理系统,由RedHat创建。 作为一个基础的包管理系统,自然有几个前端的包管理器提供给大家,我们一起来看看它们之中,哪个最好吧

  • YUM (Yellowdog Updater, Modified)

这是一个开源,并且流行的命令行包管理器,作为一个RPM的管理方式。你可以和APT对比一下,它其实是集成了APT有的通常的功能。你可以通过以下的示例网页来获得一个对YUM的清晰认识。

译者注:虽然YUM随着CentOS和RedHat的发行脚步,已经遍布各大国家的各路服务器,但是不得不承认的是,随着新一代包管理器——DNF的问世,YUM这个接近废弃的冗杂项目,终于可以宣告结束了

20 Linux YUM Commands for Package Management (URL是:http://www.tecmint.com/20-linux-yum-yellowdog-updater-modified-commands-for-package-mangement/)

  • DNF (Dandified Yum)

它也是个面对基于RPM形式软件包的发行版的包管理器,从Fedora 18开始进入大众视野,作为YUM的升级版/替代品。

如果你曾经用过Fedora 22,那么你一定已经发现了它是默认的包管理器。 这有几个链接,它们可以告诉你关于DNF的更多信息: DNF – The Next Generation Package Management for RPM Based Distributions (URL是:http://www.tecmint.com/dnf-next-generation-package-management-utility-for-linux/) 27 ‘DNF’ Commands Examples to Manage Fedora Package Management (URL是:http://www.tecmint.com/dnf-commands-for-fedora-rpm-package-management/)

3. Pacman Package Manager – Arch Linux

这是个既流行又强大,但是又很简单的包管理器,它为Arch Linux和一些其他不怎么有人用的Linux发行版设计,提供了其他包管理器都会提供的基础功能——例如安装,自动依赖的解决,升级,卸载和下载软件。

译者注:或许Pacman本身并不够严谨,也不够强大,但是作为一个简单实用的管理器,它在Arch下的表现已经足够令人满意了。

但是重点是,它是为了简化Arch Linux的用户的包管理操作而设计的。你可以通过阅读这个,Pacman overview (URL是:https://wiki.archlinux.org/index.php/Pacman)来获取更加详细的信息。

4.Zypper Package Manager - OpenSUSE

一个OpenSUSE下的命令行包管理器,使用libzypp库,提供通用的功能,包括软件源的使用,包的安装,依赖问题的解决等。

重点是,它也可以解决软件源的扩展问题,比如模式化,补丁和生成。OpenSUSE的新手可以通过下面的链接来掌握它。 45 Zypper Commands to Master OpenSUSE Package Management (URL是:http://www.tecmint.com/zypper-commands-to-manage-suse-linux-package-management/)

5.Portage Package Manager – Gentoo

Gentoo下的包管理器,虽然宿主——Gentoo是一个目前流行度稍逊的发行版,但是也没能阻止它成为最好的包管理软件之一。

Portage项目的主要目标就是创造一个简单,有效,且便于解决问题的包管理系统,来包括那些基础的功能。

想要有更多的了解,请参考Portage project (URL是:https://wiki.gentoo.org/wiki/Project:Portage)

最后评论

就像我开始时提到的,这篇文章的主要目的就是给Linux的新手们提供一个关于最好的几个包管理系统的介绍,至于要怎么使用并掌握具体的某一个,还请大家参考文中给出的链接,并作出实践。

当然了,各个Linux发行版的用户们,对于包管理器的好坏,都有着自己的看法,也欢迎大家加入讨论。

(文中所有配图均来自于网络)

译者:文中的链接很多,都是一些针对特定包管理器的实例和应用,如果有哪篇需要翻译,可以通过留言,网络大群,或者邮箱zhouplus@qq.com与我联系。

原文发布于微信公众号 - 马哥Linux运维(magedu-Linux)

原文发表时间:2016-07-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java帮帮-微信公众号-技术文章全总结

Java等IT开发视频资源分享(不断更新)

前言: 该日志一直更新,资源都是免费分享获取精品资源需要分享好友加【Java帮帮】微信公众号,好资源大家共享,赶快分享到你的QQ空间让更多朋友都能获取免费的资源...

1.9K80
来自专栏游戏杂谈

移动APP的IM后台架构浅析

IM(InstantMessaging 即时通讯)作为一项基础功能,很多APP都有,比如:手机QQ、微信、易信、钉钉、飞信、旺旺、咚咚、陌陌等。而IM如同我们日...

48620
来自专栏腾讯Bugly的专栏

关于移动 App H5 页面里的 JavaScript 异常捕获

自 HTML5 标准正式发布之后,其得天独厚的跨平台特性吸引了众多开发者的目光。 伴随着 HTML5 的发展,JavaScript 的重要性也在逐步增加,要说现...

66190
来自专栏美团技术团队

服务容错模式

背景 随着美团点评服务框架和服务治理体系的逐步成熟,服务化已成为公司内部系统设计的趋势。本着大系统小做、职责单一的原则,我们度假技术团队对业务系统进行了不少服务...

44540
来自专栏PingCAP的专栏

性能测试工具的 Coordinated Omission 问题

很早之前就看过 Gil 大神的一篇文章《Your Load Generator Is Probably Lying To You - Take The Red ...

30450
来自专栏数据库新发现

ASM存储高怎么办?这里有一套可用故障解决分析方案

原文链接:http://www.enmotech.com/web/detail/1/588/1.html

14620
来自专栏Java架构师学习

一文归纳总结分布式架构的那些事!

进入十一月,最火热的话题与期待的日子自然是双十一狂欢购物节了,作为程序员的你除了要清空自己的购物车之外,最关心的是不是双十一架构技术是如何承受亿级用户流量的冲击...

12240
来自专栏FreeBuf

Umap2 | 开源USB host安全评估工具

Umap2是一款由NCC Group和Cisco SAS小组开发的、基于python的USB host安全评估工具。 它拥有第一版所支持的所有功能: umap2...

21850
来自专栏Netkiller

高级软件工程师(面试题)

高级软件工程师(面试题) 出题者:netkiller 出处:http://www.netkiller.cn/ 高级软件工程师 下面的面试题不分语言,适用于所有...

40730
来自专栏IT技术精选文摘

NoSQL和数据可扩展性

介绍 本文提供了一个易于理解和有用的一组有关当前可用NoSQL数据库的信息。 可扩展数据架构 可扩展数据架构已发展用于提高整体系统效率并降低运营成本。 具体的...

52360

扫码关注云+社区

领取腾讯云代金券