Apt
如何擺脫“軟體包已降級並且在沒有 –allow-downgrades 的情況下使用 -y”apt 消息
我使用 Nagios 測試來檢查某些 Linux 機器中是否有任何軟體包關鍵更新。check 命令使用以下命令來查找掛起的關鍵更新:
/usr/bin/apt-get -o 'Debug::NoLocking=true' -s -qq upgrade
,即以非零狀態退出。因此,Nagios 檢查顯示警告。如果我手動執行該命令,我會收到以下消息:
~# /usr/bin/apt-get -o 'Debug::NoLocking=true' -s -qq upgrade E: Packages were downgraded and -y was used without --allow-downgrades.
但是,我不記得降級過任何軟體包。你能幫我擺脫這個警告嗎?
最好的祝愿,
“Packages were downgrade” 並不意味著你降級了一個包,它意味著
apt upgrade
決定它需要降級一個包(可能是因為你的 pin 優先級為 1000 或更高)。真正的解決辦法是避免最終陷入
apt
需要降級的情況,但我意識到這不是重點。
-y
,但在這裡你還需要--allow-downgrades
:apt-get -o 'Debug::NoLocking=true' -s -qq --allow-downgrades upgrade
降級需要額外確認。
(通常應該避免這種情況,但由於該
-s
選項要求apt
僅模擬它會做什麼,所以在這裡可以。)