今天安装更新时,我注意到了这一点:
Get:15 http://in.archive.ubuntu.com/ubuntu/ trusty-updates/main libdns100 i386 1:9.9.5.dfsg-3ubuntu0.2 [626 kB]
Err http://in.archive.ubuntu.com/ubuntu/ trusty-updates/main libdns100 i386 1:9.9.5.dfsg-3ubuntu0.2
Connection failed [IP: 91.189.92.200 80]
Get:16 http://security.ubuntu.com/ubuntu/ trusty-security/main libdns100 i386 1:9.9.5.dfsg-3ubuntu0.2 [626 kB]
从我的常规更新镜像下载软件包时出现了一些连接问题http://in.archive.ubuntu.com/ubuntu/更新程序选择http://security.ubuntu.com/ubuntu/作为回退以下载相同的软件包,此后更新成功。这是我第一次在下载更新时注意到这种回退机制。
/etc/apt/sources.list
但是,我的文件内容如下:
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://in.archive.ubuntu.com/ubuntu/ trusty main restricted
deb-src http://in.archive.ubuntu.com/ubuntu/ trusty main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://in.archive.ubuntu.com/ubuntu/ trusty-updates main restricted
deb-src http://in.archive.ubuntu.com/ubuntu/ trusty-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://in.archive.ubuntu.com/ubuntu/ trusty universe
deb-src http://in.archive.ubuntu.com/ubuntu/ trusty universe
deb http://in.archive.ubuntu.com/ubuntu/ trusty-updates universe
deb-src http://in.archive.ubuntu.com/ubuntu/ trusty-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://in.archive.ubuntu.com/ubuntu/ trusty multiverse
deb-src http://in.archive.ubuntu.com/ubuntu/ trusty multiverse
deb http://in.archive.ubuntu.com/ubuntu/ trusty-updates multiverse
deb-src http://in.archive.ubuntu.com/ubuntu/ trusty-updates multiverse
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://in.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://in.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu trusty-security main restricted
deb-src http://security.ubuntu.com/ubuntu trusty-security main restricted
deb http://security.ubuntu.com/ubuntu trusty-security universe
deb-src http://security.ubuntu.com/ubuntu trusty-security universe
deb http://security.ubuntu.com/ubuntu trusty-security multiverse
deb-src http://security.ubuntu.com/ubuntu trusty-security multiverse
## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu trusty partner
# deb-src http://archive.canonical.com/ubuntu trusty partner
## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
deb http://extras.ubuntu.com/ubuntu trusty main
deb-src http://extras.ubuntu.com/ubuntu trusty main
可以看到,只trusty-security
为 security.ubuntu.com 启用了存储库。但是,出现问题的软件包来自trusty-updates
。那么,这种回退机制是如何工作的?此外,触发此机制的场景有哪些?
答案1
如果多个存储库提供完全相同版本的包,则apt
使用最先出现的存储库sources.list
作为首选,其他存储库作为后备。
如果使用apt-cache policy
,您将获得以下形式的结果:
$ apt-cache policy libdns100
libdns100:
Installed: 1:9.9.5.dfsg-3ubuntu0.1
Candidate: 1:9.9.5.dfsg-3ubuntu0.1
Version table:
*** 1:9.9.5.dfsg-3ubuntu0.1 0
500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
500 http://in.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
100 /var/lib/dpkg/status
1:9.9.5.dfsg-3 0
500 http://in.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
如您所见,两个存储库提供了完全相同版本的软件包 - 尽管它们位于不同的渠道,但它们提供相同的软件包和版本。
Several instances of the same version of a package may be available
when the sources.list(5) file contains references to more than one
source. In this case apt-get downloads the instance listed earliest in
the sources.list(5) file. The APT preferences do not affect the choice
of instance, only the choice of version.