apt-get bloccato a 0 [Collegamento a us.archive.ubuntu.com]


164

Quando eseguo l'aggiornamento si blocca qui:

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)] ░

Quando aggiorno, si blocca qui:

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

Sono in grado di eseguire il ping di us.archive.ubuntu.com bene:

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

Cosa posso fare per risolvere questo problema?


Quello che ho provato finora.

Ho provato le seguenti indicazioni su questo blog: http://nickescobedo.com/719/ubuntu-apt-get-hangs-at-0

Per forzare apt-get ad usare esclusivamente IPv4

  • Crea un file in /etc/apt/apt.conf.d/99force-ipv4
  • Aggiungi questa riga al file appena creato Acquire::ForceIPv4 false;
  • Apt-get ora utilizzerà esclusivamente IPv4

Nessuna delle risposte ha funzionato per me: il mio problema era il firewall dell'host Windows che bloccava il mio guest Ubuntu in esecuzione su Virtualbox.
— Drodsou,

Nessuna di queste risposte ha funzionato per me. Ho riavviato la mia macchina virtuale e funziona ora.
— kilojoules,

Risposte:


309

Ho capito come tornare a lavorare.

Modifica gai.conf:

sudo vim /etc/gai.conf

cambia linea ~ 54 per rimuovere il commento dal seguente:

precedence ::ffff:0:0/96  100

scrivi ed esci:

:wq

ATTENZIONE

Guarda la linea 50 che sembra quasi identica:

precedence ::ffff:0:0/96  10

Questa è la linea sbagliata. Vai ~ 4 righe verso il basso e troverai la riga corretta per rimuovere il commento perché termina con 100invece di10


1
Grazie per aver pubblicato la tua soluzione. Stavo avendo lo stesso problema e questo è stato risolto.
— Brady,

55
Come mai l'hai capito? Questo improvvisamente ha iniziato a succedere a me su uno dei miei server e questo ha risolto il problema.
— Brian Neal,

4
Cosa sta succedendo qui? Vuoi elaborare perché questa correzione funziona?
— quattro43,

53
Problema: gli ISP stanno iniziando a configurare una rete IPv6 interna in preparazione per eventualmente connettersi a Internet IPv6. Di conseguenza, i server in questa rete ora provano a connettersi a * .ubuntu.com tramite il suo indirizzo IPv6 di default quando eseguono apt-get. Soluzione: il commento automatico precedence ::ffff:0:0/96 100consente alle richieste di preferire IPv4
— Arian Faurtosh,

8
FISSO! Questa è sicuramente la soluzione giusta per questo problema. Ma per chiunque trovi questa correzione assicurati di NON fare quello che ho fatto. Ho commentato precedence ::ffff:0:0/96 10e ho dovuto tornare al file e commentare di nuovo quella riga e quindi decommentare la riga corretta che èprecedence ::ffff:0:0/96 100
— digue

14

È meglio disabilitare IPV6 prima di aggiornare e aggiornare.

  1. Terminale aperto

  2. Immettere sudo -H gedit /etc/sysctl.confe aprire il file di configurazione e aggiungere le seguenti righe alla fine

    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1 
    net.ipv6.conf.lo.disable_ipv6 = 1 
    
  3. Dopo quella corsa

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

    Se riporta "1" significa che hai disabilitato IPV6.

    Se riporta "0", segui i passaggi 4 e 5.

  4. Digita comando sudo sysctl -p. Lo vedrai nel terminale.

    net.ipv6.conf.all.disable_ipv6 = 1 
    net.ipv6.conf.default.disable_ipv6 = 1 
    net.ipv6.conf.lo.disable_ipv6 = 1 
    
  5. Ripeti sopra il "Passaggio 3" e ora segnalerà 1.


ha funzionato. Non capivo perché. Puoi spiegare per favore.
— AAI

6

Nessuna delle correzioni IPv6 ha funzionato per me. Forse ho lo stesso sintomo con una causa diversa. La mia soluzione era passare a un altro archivio facendo una ricerca e sostituendo in sources.list, ad esempio:

sudo vim /etc/apt/sources.list

E poi:

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

Questo almeno mi permette di tornare al lavoro fino a quando non ho capito il vero problema.


1

Ciò che ha funzionato per me è stato quello di cambiare le impostazioni della mia rete VirtualBox per il mio guest Ubuntu su "NAT" da "Bridged Adapter".


Sì, questo è destinato a funzionare. Ma perché non funziona con "Bridged Adapter". Sono in grado di fare tutto con "Bridged Adapter" tranne apt-get update.
— soufrk,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.