一個(gè) Linux 新用戶應(yīng)該知道他或她的進(jìn)步源自于對(duì) Linux 發(fā)行版的使用,而 Linux 發(fā)行版有好幾種,并以不同的方式管理軟件包。
在 Linux 中,包管理器非常重要,知道如何使用多種包管理器可以讓你像一個(gè)高手一樣活得很舒適,從在倉(cāng)庫(kù)下載軟件、安裝軟件,到更新軟件、處理依賴和刪除軟件是非常重要的,這也是Linux 系統(tǒng)管理的一個(gè)重要部分。
成為一個(gè) Linux 高手的一個(gè)標(biāo)志是了解主要的 Linux 發(fā)行版如何處理包,在這篇文章中,我們應(yīng)該看一些你在 Linux 上能找到的最佳的包管理器,
在這里,我們的主要重點(diǎn)是關(guān)于一些最佳包管理器的相關(guān)信息,但不是如何使用它們,這些留給你親自發(fā)現(xiàn)。但我會(huì)提供一些有意義的鏈接,使用指南或更多。
1. DPKG - Debian 包管理系統(tǒng)(Debian Package Management System)
Dpkg 是 Debian Linux 家族的基礎(chǔ)包管理系統(tǒng),它用于安裝、刪除、存儲(chǔ)和提供.deb包的信息。
這是一個(gè)低層面的工具,并且有多個(gè)前端工具可以幫助用戶從遠(yuǎn)程的倉(cāng)庫(kù)獲取包,或處理復(fù)雜的包關(guān)系的工具,包括如下:
參考:15 個(gè)用于基于 Debian 的發(fā)行版的 “dpkg” 命令實(shí)例
APT (高級(jí)打包工具(Advanced Packaging Tool))
這個(gè)是一個(gè) dpkg 包管理系統(tǒng)的前端工具,它是一個(gè)非常受歡迎的、自由而強(qiáng)大的,有用的命令行包管理器系統(tǒng)。
Debian 及其衍生版,例如 Ubuntu 和 Linux Mint 的用戶應(yīng)該非常熟悉這個(gè)包管理工具。
想要了解它是如何工作的,你可以去看看下面這些 HOW TO 指南:
參考:15 個(gè)怎樣在 Ubuntu/Debian 上使用新的 APT 工具的例子
參考:25 個(gè)用于包管理的有用的 APT-GET 和 APT-CACHE 的基礎(chǔ)命令
Aptitude 包管理器
這個(gè)也是 Debian Linux 家族一個(gè)非常出名的命令行前端包管理工具,它工作方式類似 APT ,它們之間有很多可以比較的地方,不過,你應(yīng)該兩個(gè)都試試才知道哪個(gè)工作的更好。
它最初為 Debian 及其衍生版設(shè)計(jì)的,但是現(xiàn)在它的功能延伸到 RHEL 家族。你可以參考這個(gè)指南了解更多關(guān)于 APT 和 Aptitude。
參考:APT 和 Aptitude 是什么?它們知道到底有什么不同?
Synaptic 包管理器
Synaptic是一個(gè)基于GTK+的APT的可視化包管理器,對(duì)于一些不想使用命令行的用戶,它非常好用。
2. RPM - 紅帽包管理器(Red Hat Package Manager)
這個(gè)是紅帽創(chuàng)建的 Linux 基本標(biāo)準(zhǔn)(LSB)打包格式和基礎(chǔ)包管理系統(tǒng)。基于這個(gè)底層系統(tǒng),有多個(gè)前端包管理工具可供你使用,但我們應(yīng)該只看那些最好的,那就是:
YUM (黃狗更新器,修改版(Yellowdog Updater, Modified))
這個(gè)是一個(gè)開源、流行的命令行包管理器,它是用戶使用 RPM 的界面(之一)。你可以把它和 Debian Linux 系統(tǒng)中的 APT 進(jìn)行對(duì)比,它和 APT 擁有相同的功能。你可以從這個(gè) HOW TO 指南中的例子更加清晰的理解YUM:
參考:20 個(gè)用于包管理的 YUM 命令
DNF(優(yōu)美的 Yum(Dandified Yum))
這個(gè)也是一個(gè)用于基于 RPM 的發(fā)行版的包管理器,F(xiàn)edora 18 引入了它,它是下一代 YUM。
如果你用 Fedora 22 及更新版本,你肯定知道它是默認(rèn)的包管理器。這里有一些鏈接,將為你提供更多關(guān)于 DNF 的信息和如何使用它。
參考:DNF - 基于 RPM 的發(fā)行版的下一代通用包管理軟件
參考: 27 個(gè)管理 Fedora 軟件包的 ‘DNF’ 命令例子
3. Pacman 包管理器 – Arch Linux
這個(gè)是一個(gè)流行的、強(qiáng)大而易用的包管理器,它用于 Arch Linux 和其他的一些小眾發(fā)行版。它提供了一些其他包管理器提供的基本功能,包括安裝、自動(dòng)解決依賴關(guān)系、升級(jí)、卸載和降級(jí)軟件。
但是最大的用處是,它為 Arch 用戶創(chuàng)建了一個(gè)簡(jiǎn)單易用的包管理方式。你可以閱讀 Pacman 概覽,它會(huì)解釋上面提到的一些功能。
4. Zypper 包管理器 – openSUSE
這個(gè)是一個(gè)使用 libzypp 庫(kù)制作的用于 OpenSUSE 系統(tǒng)上的命令行包管理器,它的常用功能包括訪問倉(cāng)庫(kù)、安裝包、解決依賴問題和其他功能。
更重要的是,它也可以支持存儲(chǔ)庫(kù)擴(kuò)展功能,如模式、補(bǔ)丁和產(chǎn)品。新的 OpenSUSE 用戶可以參考下面的鏈接來掌控它。
參考:45 個(gè)讓你精通 openSUSE 包管理的 Zypper 命令
5. Portage 包管理器 – Gentoo
這個(gè)是 Gentoo 的包管理器,當(dāng)下不怎么流行的一個(gè)發(fā)行版,但是這并不阻止它成為 Linux 下最好的軟件包管理器之一。
Portage 項(xiàng)目的主要目標(biāo)是創(chuàng)建一個(gè)簡(jiǎn)單、無故障的包管理系統(tǒng),包含向后兼容、自動(dòng)化等功能。
如果希望理解的更清晰,可以看下: Portage 項(xiàng)目頁。
結(jié)束語
正如我在開始時(shí)提到的,這個(gè)指南的主要意圖是給 Linux 用戶提供一個(gè)最佳軟件包管理器的列表,但知道如何使用它們可以通過其后提供的重要的鏈接,并實(shí)際去試試它們。
各個(gè)發(fā)行版的用戶需要學(xué)習(xí)超出他們的發(fā)行版之外的一些東西,才能更好理解上述提到的這些不同的包管理器。