我做了sudo apt-mark hold nameofthepackage
3 個軟體包,但現在當我升級時我有一個惱人的評論sudo apt-get upgrade
:
Following packages have been holded :
package1 package2 package3
0 upgraded, 0 installed, 0 to remove and 3 non-updated.
(我對終端的不準確輸出感到抱歉,我使用的是法語版本,我不知道如何用英語準確表達。)
是否存在一種「隱藏」這一點的方法?0 non-updated
即使我拿著包裹,我也想像往常一樣。謝謝
答案1
使用 Apt Preferences 固定軟體套件版本
檢查我的包裹的當前優先政策,示例如下
virtualbox
:$ apt-cache policy virtualbox virtualbox: Installed: 4.3.6-dfsg-1 Candidate: 4.3.6-dfsg-2 Version table: 4.3.6-dfsg-2 0 500 http://archive.ubuntu.com/ubuntu/ trusty/multiverse amd64 Packages *** 4.3.6-dfsg-1 0 100 /var/lib/dpkg/status
在中建立新文件
/etc/apt/preferences.d/
sudo vim /etc/apt/preferences.d/my_pin
加上你想要的套件(
*
可以使用joker),具有更高的優先權(default0
,max1000
,甚至負值,例如-1
跳過版本)Package: virtualbox* Pin: version 4.3.6-dfsg-1 Pin-Priority: 500
再檢查一遍:
$ apt-cache policy virtualbox virtualbox: Installed: 4.3.6-dfsg-1 Candidate: 4.3.6-dfsg-1 Package pin: 4.3.6-dfsg-1 Version table: 4.3.6-dfsg-2 500 500 http://archive.ubuntu.com/ubuntu/ trusty/multiverse amd64 Packages *** 4.3.6-dfsg-1 500 100 /var/lib/dpkg/status
不需要使用保持,所以
sudo apt-mark unhold virtualbox
但你可以將其保留為第二個鎖。
現在,如果我檢查apt-get update
,沒有提及任何內容virtualbox
(在保留的軟體包清單中)。
- 參考:如何使用 APT 首選項 Pinnig
- 井號
#
可用於註解 APT 首選項檔案中的行。