apt-get 无法处理 Synaptic 中的包锁定

apt-get 无法处理 Synaptic 中的包锁定

在 Synaptic 中,我将 skype 锁定为版本 2.2.0.35,并且包管理器正确地忽略了较新的版本(它没有选择 skype 升级)。

相反,apt-get upgrade 会建议升级。

我知道我可以用 锁定包echo "skype hold" | sudo dpkg --set-selections,但我希望 Synaptic 的更改能够反映在 apt-get 中

答案1

Synaptic 有自己的配置文件,与 dpgk 的配置文件不同,因此这将是一个手动过程。但是,这里有一些命令可以使事情变得更容易。

要暂停固定的 Synaptic 软件包:

sed -n '/Package:/h;/Pin:/{g;s/\(Package: \)//;s/.*/& hold/p}' < /var/lib/synaptic/preferences |  sudo dpkg --set-selections

如果您想要将保留的软件包改回安装:

dpkg --get-selections |sed -n '/hold/H;s/hold/install/p'| sudo dpkg --set-selections

答案2

最终在Debian中变成了一个愿望:http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=692017

相关内容