我有一些想要手动降级的软件包。如果我运行apt-cache policy
,我会看到所需的版本:
$ apt-cache policy foo-package | head
foo-package:
Installed: 0.21.0-0
Candidate: 0.21.0-0
Version table:
*** 0.21.0-0 0
500 ***/ unstable/all/ Packages
100 ***
0.20.0-0 0
500 ***/ unstable/all/ Packages
0.19.0-0 0
但是,如果我尝试手动降级它,它不起作用:
$ apt-get install foo-package=0.20.0-0
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
foo-package
0 upgraded, 0 newly installed, 0 to remove and 31 not upgraded.
此后的输出apt-cache policy
不会改变。
手动删除然后安装包(apt-get remove foo-package; apt-get install foo-package=0.20.0-0
)确实有效(虽然删除了一些需要的包foo-package=0.21.0-0
,但我可以接受)。
没有保留的包裹:dpkg --get-selections | grep hold
不打印任何内容。
这可能是什么原因造成的?是否有某些适当的选项可以导致这种行为?
(事实上,我们的安装不寻常(不是任何标准发行版),所以这可能是一个原因。但我想知道这种行为是否可以通过 apt 的一些标准设置来解释。)