apt-get install -t 測試 appX VS apt-get install appX/testing

apt-get install -t 測試 appX VS apt-get install appX/testing

我一直試圖理解這兩個命令之間的區別,並注意到我得到了不同的結果。

apt-get install -t testing appX
apt-get install appX/testing

背景

我設定了我的來源清單並固定配置https://serverfault.com/a/382101/132528

目前的成果

root@home:/etc/apt# apt-cache policy i3
i3:
Installed: (none)
Candidate: 4.2-2
Version table:
   4.8-1 0
    750 http://debian.mirror.ac.za/debian/ testing/main amd64 Packages
    750 http://ftp.us.debian.org/debian/ testing/main amd64 Packages
    50 http://debian.mirror.ac.za/debian/ unstable/main amd64 Packages
    50 http://ftp.us.debian.org/debian/ unstable/main amd64 Packages
   4.8-1~bpo70+1 0
    100 http://debian.mirror.ac.za/debian/ wheezy-backports/main amd64 Packages
   4.2-2 0
    995 http://debian.mirror.ac.za/debian/ wheezy/main amd64 Packages
    995 http://debian.mirror.ac.za/debian/ stable/main amd64 Packages
    995 http://ftp.us.debian.org/debian/ stable/main amd64 Packages

執行時選擇4.2-2

apt-get install -t testing appX

做的時候選擇4.8

apt-get install appX/testing

Debian 手冊:

-t 目標發布

要告訴 apt-get 在搜尋升級包時使用特定發行版,您需要使用 -t 或 --target-release 選項,後面跟著所需發行版的名稱(例如: apt-get -t stable升級)。

包裝/分發

如果檔案sources.list提到了多個發行版,則可以給出要安裝的軟體包的版本。可以使用 apt-get install package=version 請求特定版本號,但通常首選使用 apt-get install package/distribution 指示其來源發行版(穩定、測試或不穩定)。

問題

在這兩種情況下,您都指定了所需的分佈,但兩種情況之間的行為不一致?

答案1

我也遇到了同樣的問題,不過我解決了!

(我本來想評論這個原來的答案因為其他人似乎也有這個問題,但我當時沒有足夠的魔法「聲譽」點,所以我的意見很有價值,所以就這樣。

這是他為 apt-pinning 選擇的價值觀的一個怪癖。當您執行時apt-get install my_package, apt 會根據固定優先順序最高的來源來選擇安裝該軟體套件的來源。

您的整體系統設定(預設版本)的優先權為 990。

新增-t unstable至 apt-get 指令會暫時使該指令的預設版本「不穩定」。

他將「穩定」的固定優先級設定為995。這意味著無論如何,軟體包將始終從穩定版安裝,因為其優先順序甚至高於預設發布優先順序。

那麼修復呢?簡單 - 只需將引腳優先權/etc/apt/preferences.d/security.pref從 995 更改為 900。

相關內容