我似乎無法弄清楚這一點。我執行“sudo apt update”,它報告有 1 個可用更新:
sudo apt list --upgradable -a
Listing... Done
dmidecode/jammy-updates 3.3-3ubuntu0.1 arm64 [upgradable from: 3.3-3]
dmidecode/jammy,now 3.3-3 arm64 [installed,upgradable to: 3.3-3ubuntu0.1]
然後我“sudo apt update”,我得到這個:
sudo apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
dmidecode
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
有人知道為什麼升級無法安裝?我怎麼才能更新這個包?
答案1
有人知道為什麼升級無法安裝?
是的 - TLDR:一種稱為分階段更新的東西。
這是一個稍微長一點的答案。想像一下新版本的軟體包中有一個錯誤。如果新版本一次發布給所有人,維護人員將被所有這些用戶的錯誤報告淹沒,而且還會有很多人受到影響,有些人可能會在一段時間內不會再次更新他們的有錯誤的軟體包- 這很糟糕。因此,維護人員可以做的是將更新配置為分階段更新。這意味著一小部分用戶首先獲得它,可以說,他們充當“第一階段測試人員”,為下一輪人員(規模稍大的“第二階段測試人員”)掃清道路,依此類推。這樣,我們希望在早期階段能發現更多的錯誤,然後在錯誤發生後的報告-修復-redpeploy-更新周期中對維護者和用戶的影響都較小。或者,如上所述烏班圖維基,分階段更新完成:
以便在將更新推送給每個人之前可以檢測到嚴重的退化,然後停止該過程。目的是讓迴歸影響較小比例的用戶群。
我怎麼才能更新這個包?
TLDR:不要。別管它吧。準備好後,它將在您執行apt upgrade
命令時進行更新或作為自動更新的一部分進行更新。
如果有真正的原因您需要最新版本的軟體包,那麼似乎確實有一種方法可以繞過分階段更新,但只有當您絕對需要新版本時我才會這樣做:
貢獻者控制台的「更新」面板應允許測試人員選擇退出發布後的分階段更新,或選擇加入預發布的分階段更新(以測試分階段機製本身)。
-烏班圖維基。