Como o mecanismo de fallback do apt update funciona em caso de problemas de conexão?

0

Ao instalar as atualizações hoje, notei isso:

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]

Houve algum problema de conexão ao baixar o pacote do meu link de atualização regular link e o atualizador escolheu link como substituto para baixar o mesmo pacote e a atualização foi bem-sucedida a partir de então. Esta é a primeira vez que noto esse mecanismo de fallback ao baixar as atualizações.

No entanto, o seguinte é o conteúdo do meu arquivo /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

Como se pode ver, apenas trusty-security repository está habilitado para security.ubuntu.com. No entanto, o pacote que apresentava problemas era de trusty-updates . Então, como funciona esse mecanismo de fallback? Além disso, quais são os cenários quando esse mecanismo é acionado?

    
por Aditya 19.02.2015 / 19:12

1 resposta

1

Se vários repositórios fornecerem exatamente a mesma versão de um pacote, apt usará o repositório que vem primeiro no sources.list como primeira opção e os outros no fallback.

Se usar apt-cache policy , você obterá resultados do formulário:

$ 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

Como você pode ver, a mesma versão exata do pacote é fornecida por dois repositórios - mesmo que eles estejam em canais diferentes, eles fornecem o mesmo pacote e versão.

Em man apt_preferences :

   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.
    
por muru 19.02.2015 / 22:15