apt-queda atascado en 0 [Conectándose a us.archive.ubuntu.com]

163

Cuando actualizo, se atasca aquí:

user@plato:~# sudo apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
  bind9-host coreutils cpio curl dnsutils libbind9-90 libc-bin libc-dev-bin
  libc6 libc6-dev libcgmanager0 libcurl3 libcurl3-gnutls libdns100
  libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libisc95 libisccc90
  libisccfg90 libjasper1 liblwres90 libplymouth2 libsepol1 libssl-dev
  libssl-doc libssl1.0.0 linux-libc-dev mime-support multiarch-support ntp
  ntpdate openssl plymouth plymouth-theme-ubuntu-text python3-distupgrade
  ubuntu-release-upgrader-core unzip
39 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 16.0 MB of archives.
After this operation, 12.3 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
0% [Connecting to us.archive.ubuntu.com (2001:67c:1562::15)] ░

Cuando actualizo se atasca aquí:

user@plato:~# apt-get update
0% [Connecting to us.archive.ubuntu.com (2001:67c:1562::14)] [Connecting to sec░

Puedo hacer ping a us.archive.ubuntu.com muy bien:

user@plato:~# ping us.archive.ubuntu.com
PING us.archive.ubuntu.com (91.189.91.23) 56(84) bytes of data.
64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=1 ttl=54 time=81.5 ms
64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=2 ttl=54 time=81.5 ms
64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=3 ttl=54 time=81.5 ms
64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=4 ttl=54 time=81.4 ms
^C
--- us.archive.ubuntu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 81.425/81.528/81.582/0.355 ms

¿Qué puedo hacer para arreglar esto?


Lo que he intentado hasta ahora.

He intentado seguir las instrucciones en este blog: http://nickescobedo.com/719/ubuntu-apt-get-hangs-at-0

Para forzar a apt-get a usar IPv4 exclusivamente

  • Crea un archivo en /etc/apt/apt.conf.d/99force-ipv4
  • Agregue esta línea al archivo recién creado Acquire::ForceIPv4 false;
  • Apt-get ahora usará IPv4 exclusivamente
Arian Faurtosh
fuente
Ninguna de las respuestas funcionó para mí: mi problema era que mi firewall de host de Windows bloqueaba a mi invitado Ubuntu que se ejecutaba en Virtualbox.
drodsou
Ninguna de estas respuestas funcionó para mí. Reinicié mi máquina virtual y funciona ahora.
kilojulios

Respuestas:

309

Descubrí cómo volver a trabajar con apt-get.

Editar gai.conf:

sudo vim /etc/gai.conf

cambie la línea ~ 54 para descomentar lo siguiente:

precedence ::ffff:0:0/96  100

escribir y salir:

:wq

PRECAUCIÓN

Mira la línea 50 que parece casi idéntica:

precedence ::ffff:0:0/96  10

Esta es la línea equivocada. Ve ~ 4 líneas hacia abajo y encontrarás la línea correcta para descomentar porque termina en 100lugar de10

Arian Faurtosh
fuente
1
Gracias por publicar su solución. Estaba teniendo el mismo problema y esto lo solucionó.
bradym
55
¿Cómo diablos resolviste esto? Esto de repente comenzó a sucederme en uno de mis servidores y esto lo solucionó.
Brian Neal
44
¿Que esta pasando aqui? ¿Quieres explicar por qué funciona esta solución?
four43
53
Problema: los ISP están comenzando a configurar una red IPv6 interna en preparación para eventualmente conectarse a Internet IPv6. Como resultado, los servidores de esta red ahora intentan conectarse a * .ubuntu.com a través de su dirección IPv6 de forma predeterminada cuando ejecutan apt-get. Solución: descomentar precedence ::ffff:0:0/96 100permite que las solicitudes prefieran IPv4
Arian Faurtosh
8
¡FIJO! Esta es definitivamente la solución correcta para este problema. Pero para cualquiera que se encuentre con esta solución, asegúrese de NO hacer lo que hice. Descomenté precedence ::ffff:0:0/96 10y tuve que volver al archivo y comentar esa línea nuevamente y luego descomentar la línea correcta que esprecedence ::ffff:0:0/96 100
dtigue
14

Es mejor deshabilitar el IPV6 antes de actualizar y actualizar.

  1. Terminal abierta

  2. Ingrese sudo -H gedit /etc/sysctl.confy abra el archivo de configuración y agregue las siguientes líneas al final

    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1 
    net.ipv6.conf.lo.disable_ipv6 = 1 
    
  3. Después de esa carrera

    cat /proc/sys/net/ipv6/conf/all/disable_ipv6 
    

    Si informa '1' significa que ha deshabilitado IPV6.

    Si informa '0', siga los pasos 4 y 5.

  4. Comando de tipo sudo sysctl -p. Verá esto en la terminal.

    net.ipv6.conf.all.disable_ipv6 = 1 
    net.ipv6.conf.default.disable_ipv6 = 1 
    net.ipv6.conf.lo.disable_ipv6 = 1 
    
  5. Repita el "Paso 3" anterior y ahora informará 1.

Sudhir Belagali
fuente
esto funcionó No entendí por qué. ¿Puedes explicar por favor?
AAI
6

Ninguna de las correcciones de IPv6 funcionó para mí. Posiblemente tengo el mismo síntoma con una causa diferente. Mi solución alternativa fue cambiar a un archivo diferente haciendo una búsqueda y reemplazo en sources.list, por ejemplo:

sudo vim /etc/apt/sources.list

Y entonces:

:%s/us\.archive/de\.archive/g
:wq

Esto al menos me permite volver a trabajar hasta que descubra el verdadero problema.

Rob Fisher
fuente
1

Lo que funcionó para mí fue cambiar la configuración de red de VirtualBox para mi invitado Ubuntu a "NAT" desde "Adaptador en puente".

usuario994165
fuente
Sí, esto está obligado a funcionar. Pero, ¿por qué no funciona sobre 'Adaptador puenteado'? Puedo hacer todo con 'Adaptador en puente' excepto apt-get update.
soufrk