同一包-多个存储库


11

如果同一软件包在多个存储库中可用,Ubuntu将选择从哪个存储库下载软件包?假设最初从存储库X安装了软件包A,后来又添加了也具有软件包A的存储库Y。将选择哪个存储库来更新该软件包?另外,如果我完全删除了此软件包并尝试重新安装,那么Ubuntu将首选哪个仓库来安装该软件包?

Answers:


12

默认情况下,安装最高版本号的软件包,无论它来自哪个存储库,除非其版本号低于软件包的当前安装版本(例如,如果您下载了更高版本的软件包,则可能会发生这种情况)一个.deb打包和手动安装)。在极少数情况下,几个存储​​库具有相同(最高)软件包版本,则从sources.list文件中最先出现的软件包开始安装软件包。

但是,您可以通过基于各种条件为某些程序包分配不同的优先级来更改此设置。上一段对默认设置是正确的,因为默认情况下,所有软件包的优先级均为500。但是,如果软件包的不同版本具有不同的优先级,则将安装具有最高优先级的版本,并且版本号将仅用作领带。多个版本具有相同(最高)优先级的断路器。另外,如果优先级最高的软件包的优先级至少为1000,则即使其版本低于当前安装的版本,也将安装该软件包。

优先级在中管理/etc/apt/preferences和记录man apt_preferences。有关如何使用它们的示例,请参见此处的答案。


请注意,该文档说它为属于目标发行版的版本分配了990的优先级因此,不要像您在此处所说的那样设置500(因为默认情况下,所有软件包的优先级都为500。)仅当它不是正确的目标时,才设置为500。
Alexis Wilke

@AlexisWilke默认情况下,没有目标版本。
fkraiem
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.