为什么 apt 不会降级软件包

为什么 apt 不会降级软件包

我有一些想要手动降级的软件包。如果我运行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 的一些标准设置来解释。)

相关内容