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