我一直试图理解这两个命令之间的区别,并注意到我得到了不同的结果。
apt-get install -t testing appX
apt-get install appX/testing我按照https://serverfault.com/a/382101/132528设置了我的源代码列表和固定配置
root@home:/etc/apt# apt-cache policy i3
i3:
Installed: (none)
Candidate: 4.2-2
Version table:
4.8-1 0
750 http://debian.mirror.ac.za/debian/ testing/main amd64 Packages
750 http://ftp.us.debian.org/debian/ testing/main amd64 Packages
50 http://debian.mirror.ac.za/debian/ unstable/main amd64 Packages
50 http://ftp.us.debian.org/debian/ unstable/main amd64 Packages
4.8-1~bpo70+1 0
100 http://debian.mirror.ac.za/debian/ wheezy-backports/main amd64 Packages
4.2-2 0
995 http://debian.mirror.ac.za/debian/ wheezy/main amd64 Packages
995 http://debian.mirror.ac.za/debian/ stable/main amd64 Packages
995 http://ftp.us.debian.org/debian/ stable/main amd64 Packages它选择4.2-2,在做
apt-get install -t testing appX并选择4.8做
apt-get install appX/testing-t targetRelease
要告诉apt在搜索升级包时使用特定的发行版,您需要使用-t或-目标发布选项,然后是您想要的发行版的名称(例如: apt-get -t稳定升级)。
pkg/分发
如果文件sources.list提到了几个发行版,则可以给出要安装的包的版本。可以使用apt-get安装package=version请求特定的版本号,但通常倾向于使用apt-get安装包/发行版来指示其来源分布(稳定的、测试的或不稳定的)。
在这两种情况下,您都指定了想要的分布,但是手头的行为在这两种情况之间并不一致?
发布于 2014-12-18 20:07:04
我也有同样的问题,但我想出来了!
(我最初想在原来的答案上评论这个问题,因为其他人似乎也有这个问题,但当时我没有足够的魔法“声誉”点,我的意见很有价值,如下所示。)
这是他为正确定位而选择的价值观的一种怪癖。当您运行apt-get install my_package时,apt将根据具有最高固定优先级的哪个源来选择安装该包的源。
您的整个系统设置(默认版本)的优先级为990。
将-t unstable临时添加到apt-get命令中,会使该命令的默认发行版“不稳定”。
他把“稳定”定为995。这意味着无论如何,包总是从稳定的安装,因为它的优先级甚至高于默认的发布优先级。
那么解决办法呢?简单--只需将/etc/apt/preferences.d/security.pref中的引脚优先级从995更改为900。
https://serverfault.com/questions/646934
复制相似问题