如何在 Gentoo 中列印所有可升級包的列表
正在做
emerge -avuDN --with-bdeps y --keep-going @world
花費大量時間並且經常失敗。
有沒有辦法列印 Gentoo 系統中所有可升級包的列表?
eix
是您最好的選擇。
eix --installed --upgrade
將列印所有已安裝的包,其中最佳版本不是目前版本(對於每個插槽)。這樣做的代價是您需要在每次同步後使 eix 數據庫保持最新。
歷史
現在我有一個瀏覽器(下面有更多內容),我覺得我應該在@robbat2 的回答中擴展我的評論。在使用 Gentoo 作為我的主要作業系統 5 年多之後,在使用portage和Paludis進行了 5 年的實驗之後,我意識到所有主要的發行版都是圍繞包管理系統/工具建構的。
- Debian 及其變體使用
apt
.- Redhat/Fedora 及其變體使用
rpm
.- SuSE 及其變體使用
yum
.- 許多其他人
有關完整列表,請參閱:Linux 發行版列表。請注意,Wiki 條目按包管理劃分分發。另請注意,根據時間線照片,Gentoo 是父發行版。 以諾是最初的名字。
BSD 的
從歷史上看,大多數BSD 作業系統直到最近才具有包管理的概念,它可以使用一些工作。我把 FreeBSD 放在一個額外的硬碟上,我必須看看它和 Gentoo 的關係有多密切,並且剛剛完成了我的 DE 埠和瀏覽器的編譯。
- Gentoo 有 Portage Tree,FreeBSD 使用 Ports Tree。
- Gentoo 有
sys-apps/portage
. 該emerge
命令在安裝軟體時遵循與 FreeBSD 相同的順序:配置、製作、安裝 - 當直接從埠樹安裝原始碼時。這裡的主要區別在於 FreeBSD 中的過程要求使用者安裝他們選擇的包管理器,而不是 FreeBSD 選擇的包管理器,然後該包管理器跟踪所有已安裝的軟體及其依賴項。
我說這一切是為了表明,如果包管理器在維護系統時出現故障,問題要麼在於正在編譯的包,要麼在於底層系統。為了說明,請參閱:FreeBSD 錯誤 218620 - x11-wm/muffin 版本。2.4.4 不再建構。注意評論 1 阻止了我選擇的包管理器完成 Cinnamon Desktop 的安裝,不是因為我使用的包管理器壞了,或者花費了太長時間,或者很慢,而是因為正在編譯的包壞了,就此而言,不再支持。同樣,由於正在編譯的包中的損壞,OP 的
emerge
命令沒有完成。而不是執行命令:emerge -avuDN --with-bdeps y --keep-going @world
盲目地因為它是在某個網站上找到的,所以 OP 應該添加
t
樹視圖,然後刪除--keep-going
. 此時,研究並修復有問題的包中的損壞,然後重新執行命令。直到損壞的所有包都將不再出現在輸出中,因為它們已經在新設置下重新編譯。無論您使用何種工具來顯示輸出,都應使用此過程。當損壞是由於編譯錯誤引起的時,Eix 與 Emerge 是沒有實際意義的。暗示
OP 需要研究的違規包資訊將位於
/var/tmp/portage/package-cat/offending-package/temp/build.log