© Lukas 在 Unsplash 上的照片

就在 Ubuntu 或基於 Debian 的系統上管理包而言,兩種流行的工具是 Apt 和 Apt-get。雖然兩者都可以用於包管理,但它們有一些明顯的區別。 Apt 是 Apt-get 和 Dpkg 等舊工具的現代等價物,提供了更多的特性和功能以及更高的靈活性和功能。 Apt 具有比其前身更多的選項和子命令,可以更好地控制您的配置。它具有高級依賴項解析功能,能夠在自動安裝包時解決衝突。此外,專用的下載子命令和交互模式允許用戶在應用之前查看和確認更改。相比之下,由於兼容性問題,apt-get 在當前 Ubuntu 版本中仍然被廣泛使用,並經常包含在文檔和腳本中.了解這兩種工具的區別可以幫助您選擇適合您的包管理要求的工具。

Apt 與 Apt-Get:並排比較

FeatureApt Apt-GetOptions更多選項和sub-commands allow for greater flexibility and power.選項和sub-commands較少在最新的 Ubuntu 版本中。自動解決衝突在安裝軟件包時自動解決依賴關係無法自動解決依賴關係,並且可能會失敗。僅下載具有專用的下載子命令使用 – 僅下載標誌 Verbosity 具有專用的-verbose 標誌。使用-V 標誌。

Debian 由社區支持的 Debian 開發項目。

©Граймс, CC BY-SA 4.0,來自維基共享資源

Apt 與 Apt-Get:有什麼區別?

Apt 和 Apt-Get 是 Linux 操作系統上兩個流行的包管理器,但它們的功能和用法不同。雖然我們可以使用這兩種工具來管理軟件包和依賴項,但了解它們的區別可以讓我們為給定的情況選擇最合適的選項。

選項

Apt 和 apt-get 是用於基於 Debian 的操作系統的兩個包管理工具。但是,apt 被認為是 apt-get 的更現代版本,因為它的附加選項和子命令使其更加通用和強大。

通過apt,用戶可以查看詳細的包信息,升級所有已安裝的包,清除下載包的本地緩存,搜索包(幫助識別系統上未安裝的包),輕鬆定位未知包。此外,apt 包含一個用於搜索包的命令,因此它比以往任何時候都更容易。

相反,apt-get 具有更少的選項和子命令。雖然沒有專門用於清除下載包的命令,但 apt-get 廣泛用於腳本和文檔中,大多數現代版本的 Ubuntu 出於兼容性原因都包含它。此外,apt-get 可以顯示包信息併升級已安裝的包。

自動衝突解決

apt 和 apt-get 的另一個主要區別是它們的自動衝突解決能力。 Apt 具有高級依賴項解析功能,可以在安裝包時解決衝突,即使這些依賴項沒有自動明確指定。簡而言之,apt 可以自動檢測並安裝包所需的所有依賴項。因此,Apt 可以幫助您了解所有軟件包需求的最新信息。

Apt-get 不具備此功能,並且如果存在衝突的依賴項可能會失敗。使用 apt-get,用戶必須手動解決軟件包安裝過程中出現的任何衝突。這種努力可能需要更多的時間和精力,但也會讓用戶對過程有更多的控制。

交互模式

Apt 和 apt-get 的交互模式功能不同。 Apt 的交互模式允許您在應用更改之前查看和確認更改,這在進行重大系統修改或同時安裝多個軟件包時特別有用。在這種情況下,apt 會顯示將要升級或安裝的軟件包列表,以及確認提示。

相比之下,apt-get 缺少交互模式。因此,使用 apt-get 所做的更改將立即生效,而用戶沒有機會查看或批准它們。雖然這對於簡單的包安裝來說可能是可以接受的,但在進行重大系統修改時可能會帶來風險。

配置文件

Apt 和 apt-get 用戶使用單獨的包存儲庫和代理服務器配置配置文件。開發人員設計了位於目錄/etc/apt/apt.conf 和/etc/apt/apt.conf.d 中的 Apt 文件,使其比對應的 apt-get 文件更加用戶友好和易於理解。

相反,apt-get 僅依賴/etc/apt/apt.conf.d 目錄進行配置設置。雖然它可以存儲大部分配置數據,但由於這些文件結構複雜且難以理解,因此管理和故障排除這些文件比 Apt 的配置文件更具挑戰性。因此,識別和修復配置問題可能會更加複雜。

與 apt-get 使用的配置文件相比,Apt 的配置文件更加用戶友好且易於維護。用戶可以更輕鬆地自定義他們的包管理設置,並確保他們正確地設置他們的系統。

僅下載

apt 和 apt-get 都具有下載包而不安裝它們的能力.但是,apt 有自己的專用下載子命令來執行此任務,而 apt-get 使用“-download-only”標誌。 Apt 的下載子命令比 apt-get 使用的“-download-only”標誌更人性化,因為它更直觀,更容易記住。此外,下載子命令提供了比其對應的“-download-only”更詳細的輸出,這在解決下載問題時可能是有益的。這簡化了用戶下載軟件包的過程,而無需先安裝它們,確保他們在此過程中正確設置他們的系統。

Wrapper Scripts

Apt 和 apt-get 不同在他們的實施中。 Apt 用作包裝器腳本,調用多個底層工具,如 apt-cache 和 dpkg。 Python 程序員編寫了 apt 包裝器腳本,使其比 apt-get 使用的 C 代碼更易於維護和增強。

與其基於 Python 的包裝器腳本對應物不同,apt-get 是一個獨立的程序編寫在 C 中。這使它更有效率。不幸的是,這也使得維護和擴展變得更加困難,因為 C 代碼通常比對應的 Python 代碼更複雜且更易於閱讀,這使得開發人員更難檢測和修復代碼中的錯誤。

Apt 的實現作為基於 Python 的包裝器腳本,它比獨立運行的 C 對應物 apt-get 更易於使用且更易於維護。這使得 apt 成為尋求直觀且易於使用和維護的包管理工具的用戶的理想選擇。

並行下載

Apt 具有同時下載多個包的獨特功能,這可以大大加快軟件包的安裝速度。這是使用“-parallel”標誌完成的,該標誌指定可以同時下載多少個包。不幸的是,apt-get 不提供此功能。

軟件包的並行下載,尤其是在大規模安裝期間,例如在新系統的初始設置期間,可以節省大量時間。通過同時下載多個包,系統管理員可以顯著減少安裝時間。並行下載可以通過減少下載和安裝包所需的時間來進一步提高系統性能。這在資源有限的環境中特別有用,例如低端硬件或虛擬機。

改進的包緩存

apt 和 apt-get 之間的一個主要區別是它們處理包的方式緩存。 Apt 對其包緩存機制進行了多項改進,可幫助減少下載包所使用的磁盤空間。例如,apt 可以自動從不再需要的緩存中刪除包,釋放磁盤空間並提高系統性能。此外,當用戶需要安裝或降級到舊版本時,apt 在其緩存中存儲給定包的多個版本。

相比之下,Apt-get 的緩存機制更為有限,可能需要在磁盤空間消耗方面更有效率。雖然它確實緩存下載的包,但它缺乏像 apt 那樣管理緩存的高級功能。對於磁盤空間有限或希望優化系統性能的用戶來說,這可能是個問題。

Ubuntu 是基於 Debian 的 Linux 發行版。

©DANIEL CONSTANTE/Shutterstock.com

Apt 與 Apt-Get:必須知道的事實

Apt 是比 apt-get 更現代、更靈活的包管理工具,提供了更多的選項和子命令。Apt 取代了傳統的包管理工具,如 apt-get、dpkg 和 aptitude。現代版本的 Ubuntu 仍然包括apt-get 用於向後兼容,人們經常在腳本和文檔中依賴它。Apt 高級的依賴項解決能力使其能夠在包安裝過程中自動解決衝突,消除因不兼容的依賴項而導致安裝失敗的風險。在某些情況下,apt-get 甚至可能由於這些衝突而失敗。apt 和 apt-get 都可以下載軟件包而不安裝它們,儘管 apt 有自己專用的下載子命令,而 apt-get 使用“-download-only” flag.Apt 提供了一種交互模式,使用戶能夠在應用更改之前查看和確認更改,這是 apt-get 不提供的。Apt 有一個專用的“-verbose”標誌來增加輸出的詳細程度,而 apt-get 使用“-V” “ 旗幟。

Apt 與 Apt-Get:哪個更好?

Debian 和 Ubuntu Linux 系統通常使用包管理實用程序 apt-get 和 apt。雖然 apt 通常被認為是更現代的選擇,但出於兼容性原因,apt-get 仍然包含在大多數現代 Ubuntu 版本中,因為人們仍然在腳本和文檔中依賴它。

Apt 與 apt-get 相比有幾個優勢,例如更廣泛的選項和子命令選擇、高級依賴項解析功能、獨有的下載子命令、交互模式以及用於增加輸出細節的“-verbose”標誌。這些特性使 apt 比其競爭對手更加靈活和強大,尤其是對於高級用戶和系統管理員而言。

此外,apt 和 apt-get 使用不同的配置文件來存儲設置。 Apt封裝了幾個核心工具,而apt-get是一個獨立的C程序,以wrapper方式編寫。這兩個工具都使用 dpkg 實用程序在系統上安裝和管理包,但 apt 和 apt-get 負責解決依賴關係和訪問遠程存儲庫等任務。

總而言之,apt 和 apt-get 都是優秀的包管理工具,雖然 apt 更現代、更靈活,與舊版本相比有幾個優點。不幸的是,由於大多數現代 Ubuntu 版本中的兼容性原因,apt-get 仍然被廣泛使用;因此,這兩個選項可能會在未來一段時間內繼續使用。最終,使用它們中的任何一個取決於您的個人喜好和特定用例要求。

Apt 與 Apt-Get:有什麼區別? FAQs(常見問題)

apt 和 apt-get 哪個更好?

這兩種選擇各有優缺點。 Apt 更健壯,功能更豐富,具有高級依賴項解析功能和交互模式。但是,由於其兼容性,apt-get 仍然被廣泛使用並包含在大多數現代 Ubuntu 版本中。

apt 和 apt-get 可以互換使用嗎?

是的。 Apt 旨在取代像 apt-get 這樣的舊工具。但是,出於兼容性原因,apt-get 仍包含在大多數現代 Ubuntu 版本中,並且仍在腳本和文檔中廣泛使用。

使用 apt 相對於 apt-get 有哪些優勢?

strong>

Apt 提供了更多的功能和命令,使其更加通用和強大。此外,它還具有高級依賴項解析功能、交互模式和專用下載子命令。

使用 Apt-get 相對於 Apt 有哪些優勢?

出於兼容性原因,apt-get 仍被廣泛使用並包含在大多數現代版本的 Ubuntu 中。它也是一個用 C 語言編寫的獨立程序,而 apt 是作為調用多個底層工具的傘式腳本實現的。

apt-get 是否具有交互模式?

很遺憾,apt-get 不提供等效的交互模式。

apt 和 apt-get 可以解決安裝包時的衝突嗎?

Apt 具有高級的依賴項解決能力,使其能夠在安裝包時自動解決衝突,而 apt-get 缺乏這種能力,如果存在衝突的依賴項可能會失敗。所以,不可以。

apt 和 apt-get 可以下載包而不安裝它們嗎?

這兩個程序都具有下載包而不安裝它們的能力。 Apt 有專門的下載子命令,而 apt-get 使用“-download-only”標誌。

By Kaitlynn Clay

我是一名用戶體驗專家。 我對網頁設計和用戶行為分析很感興趣。 在我休息的日子裡,我總是參觀藝術博物館。