如果已经安装了该软件包,我可以运行
sudo apt-get install package-name
对其进行升级。而我也可以运行sudo apt-get upgrade
来升级所有软件包。 我只想升级基本操作系统,以后再不安装其他应用程序。如Noise(Music)应该升级VLC不应该。我该如何完成?
#1 楼
使用CLI :(推荐,请参阅pastebin和note)保留:(建议:使用dpkg)
Apt
sudo apt-mark hold package-name
Dpkg
sudo -s
echo package-name hold | dpkg --set-selections
apt-get update
注:用您的软件包名称替换,例如
google-chrome-stable
移走货舱:
Apt
sudo apt-mark unhold package-name
/> Dpkg
sudo -s
echo package-name install | dpkg --set-selections
apt-get update
注:此CLI方法可以在通过
apt-get upgrade
以及使用software-updater
进行更新的同时保留/锁定程序包。我在这里用
google-chrome-stable
进行测试。您甚至可以清楚地确定chrome更新是否可用,但可以保留。ravan@ravan:~$ apt-cache policy google-chrome-stable
google-chrome-stable:
Installed: 44.0.2403.107-1
Candidate: 46.0.2490.86-1
Version table:
46.0.2490.86-1 0
500 http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages
*** 44.0.2403.107-1 0
100 /var/lib/dpkg/status
ravan@ravan:~$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
google-chrome-stable
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
参考此处
#2 楼
使用synaptic
:注意:此方法在使用
software-updater
而不是与apt-get upgrade
一起使用时可保存/锁定程序包要安装突触,请打开终端并运行:
sudo apt-get install synaptic
我将以
google-chrome-stable
为例:打开
synaptic
并搜索chrome
并选择它。顶部菜单,然后选择强制版本,在下拉菜单中选择所需的版本。 (我不确定此步骤是否满足您的要求)
在顶部菜单中单击“打包”,然后选择“锁定版本”。
(然后它将更改变成红色)
现在您的安装版本已被锁定。因此,更新程序将在您将其解锁之前不再通知您任何更新。
对已安装的程序包类似地应用锁。
这里我已经测试过
google-chrome-stable
锁定前:
锁定后:
#3 楼
最后,是一个简单的解决方案。打开终端并运行:
sudo nano /etc/apt/preferences
以上命令打开文件,如果没有,它将创建。
要在此处将
vlc
(例如)保留为特定版本。现在将以下行添加到上述文件中:
在这里,
Package
是软件包名称。Pin
是您要保存的版本之后运行:
sudo apt-get update
测试:
插针之前:
Package: vlc
Pin: version 2.1.6-0ubuntu14.04.1
Pin-Priority: -1
插针之后:
ravan@ravan:~$ apt-cache policy vlc
vlc:
Installed: 2.1.6-0ubuntu14.04.1
Candidate: 2.2.1~trusty1
要还原,请删除
/etc/apt/preferences
文件的内容。
评论
我很好奇:为什么?@quassy我有一些应用程序非常庞大,需要经常更新,因此我需要不时更新系统,并每隔一两个月更新一次。
有趣,o_O
我已编辑帖子,以获得更好的搜索结果。如果它改变了您的实际发帖意图,请随时进行还原(回滚):) @Adityaultra