apt-get update non riesce a recuperare i file, errore "Risoluzione provvisoria errori ..."

71
Err http://archive.canonical.com natty InRelease    
Err http://security.ubuntu.com oneiric-security InRelease               
Err http://extras.ubuntu.com natty InRelease                            
Err http://security.ubuntu.com oneiric-security Release.gpg
  Temporary failure resolving ‘security.ubuntu.com’
Err http://archive.canonical.com natty Release.gpg
  Temporary failure resolving ‘archive.canonical.com’
Err http://extras.ubuntu.com natty Release.gpg
  Temporary failure resolving ‘extras.ubuntu.com’
Err http://gb.archive.ubuntu.com oneiric InRelease
Err http://gb.archive.ubuntu.com oneiric-updates InRelease
Err http://gb.archive.ubuntu.com natty-backports InRelease
Err http://gb.archive.ubuntu.com oneiric Release.gpg
  Temporary failure resolving ‘gb.archive.ubuntu.com’
Err http://gb.archive.ubuntu.com oneiric-updates Release.gpg
  Temporary failure resolving ‘gb.archive.ubuntu.com’
Err http://gb.archive.ubuntu.com natty-backports Release.gpg
  Temporary failure resolving ‘gb.archive.ubuntu.com’

Reading package lists... Done
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric/InRelease      
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric-updates/InRelease  
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/natty-backports/InRelease  
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/oneiric-security/InRelease  
W: Failed to fetch http://archive.canonical.com/ubuntu/dists/natty/InRelease  
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/natty/InRelease  
W: Failed to fetch http://archive.canonical.com/ubuntu/dists/natty/Release.gpg  Temporary failure resolving ‘archive.canonical.com’
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/oneiric-security/Release.gpg  Temporary failure resolving ‘security.ubuntu.com’
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/natty/Release.gpg  Temporary failure resolving ‘extras.ubuntu.com’
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric/Release.gpg  Temporary failure resolving ‘gb.archive.ubuntu.com’
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric-updates/Release.gpg  Temporary failure resolving ‘gb.archive.ubuntu.com’
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/natty-backports/Release.gpg  Temporary failure resolving ‘gb.archive.ubuntu.com’
W: Some index files failed to download. They have been ignored, or old ones used instead.

Questo è ciò che vedo quando provo a eseguire sudo apt-get update . Ho fatto un aggiornamento sulla mia istanza ieri e ora sto vivendo questo.

    
posta Lewis 30.12.2011 - 16:01

9 risposte

109

Panoramica

Ci sono due parti alla tua domanda:

  • risoluzione risoluzione temporanea messaggi
  • risoluzione dei problemi di gestione dei pacchetti

Risoluzione temporanea

È probabile che questo problema sia:

  • temporaneo a causa del fatto che il tuo provider di servizi Internet non inoltra correttamente i nomi di Internet (DNS) ai server DNS o esterni o
  • a causa di un cambiamento nella tua rete ha similmente bloccato questa denominazione - ad esempio, nuovo router / modem, riconfigurazione di uno switch con una nuova configurazione.

Osserviamo i possibili problemi di risoluzione DNS.

Innanzitutto, aggiungi temporaneamente un server DNS noto al tuo sistema.

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null

Quindi esegui sudo apt-get update .

Se questo risolve i tuoi messaggi di risoluzione temporanea , attendi 24 ore per vedere se il tuo ISP risolve il problema (o semplicemente contatta il tuo ISP) o puoi aggiungere un server DNS in modo permanente il tuo sistema:

echo "nameserver 8.8.8.8" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

8.8.8.8 è il server DNS di Google.

fonte

Un altro esempio di server DNS che puoi usare è OpenDNS - per esempio:

echo "nameserver 208.67.222.222" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

Problemi di gestione dei pacchetti

Oltre ai problemi di risoluzione temporanea - hai alcuni problemi di gestione dei pacchetti che devono essere corretti - presumo che tu abbia provato di recente ad aggiornare da una versione di Ubuntu alla successiva versione consigliata - nel tuo caso da Natty (11.04) a Oneiric (11.10)

Apri un terminale e digita

sudo nano /etc/apt/sources.list

Cerca le linee con un nome di distribuzione diverso nell'elenco rispetto a quello che ti aspettavi; nel tuo caso, hai eseguito l'upgrade a oneiric ma hai un altro nome di rilascio natty

Ad esempio, cerca le linee che assomigliano a deb http:/archive.canonical.com/ natty backports

Aggiungi un # all'inizio della riga per commentarlo, ad esempio

#deb http:/archive.canonical.com/ natty backports

Salva ed esegui nuovamente:

sudo apt-get update && sudo apt-get upgrade

Non dovresti avere più errori di denominazione della versione.

Al momento della stesura di questo documento, i comuni nomi di rilascio includono lucid , maverick , natty , oneiric , precise , quantal , raring , saucy , trusty , utopic e vivid .

    
risposta data fossfreedom 30.12.2011 - 19:24
8

Puoi commentare il repository non risolto dal file sources.list trovato su dir / etc / apt /

Dopo aver modificato il file sources.list, pulire il repository apt-get come

apt-get clean

Quindi aggiorna

apt-get update

L'errore sparirà

    
risposta data Mughil 30.12.2011 - 18:41
8

Si noti che questa risposta è stata scritta per le vecchie versioni di Ubuntu. Le versioni attuali utilizzano un server dei nomi locale controllato da D-Bus, per il quale si applica la parte relativa alla diagnosi di questa risposta, ma non la soluzione. Se /etc/resolv.conf contiene nameserver 127.0.1.1 o più genericamente nameserver 127.X.Y.Z , non modificarlo.

"Risoluzione temporanea degli errori ..." significa che il tuo DNS , ovvero la traduzione dai nomi degli host agli indirizzi IP, non è lavoro. Hai riconfigurato qualcosa sul tuo computer di recente? In caso contrario, potrebbe trattarsi di un errore temporaneo presso il proprio ISP.

ping -n 8.8.8.8 mostra linee come 64 bytes from 8.8.8.8: … ? (Premi Ctrl + C per fermare ping .)

  • In caso contrario, si ha un problema di connettività IP specifico. Esegui traceroute -n 8.8.8.8 e vedi dove si ferma: se è in casa / ufficio, controlla le tue apparecchiature di rete. Se puoi contattare il tuo ISP, reclamare loro.
  • Se lo fa, hai in particolare un problema DNS. Controlla il contenuto di /etc/resolv.conf ; dovrebbe esserci una riga come nameserver 1.2.3.4 (forse più di una di esse). Se le righe sono presenti, è probabile che ci sia un problema temporaneo all'interno dell'ISP e potresti essere in grado di aggirare il problema aggiungendo nameserver 8.8.8.8 a tale file (questo dichiara un server DNS aggiuntivo, fornito gratuitamente da Google) . Se il primo numero dopo nameserver è 127, allora c'è un relay DNS sulla tua macchina (questa è una buona cosa), e devi configurare quel relay DNS piuttosto che modificare /etc/resolv.conf . Nelle versioni moderne di Ubuntu, c'è un relay DNS per impostazione predefinita, è Dnsmasq ed è controllato da D-Bus.
risposta data Gilles 30.12.2011 - 19:17
3

A volte, quando sei dietro un server proxy, è addirittura necessario che tu generi un file apt.conf in /etc/apt/ e lo compili con le voci specifiche, come:

Acquire::http::proxy "http://<yourproxyserver>:<Port>";
Acquire::https::proxy "http://<yourproxyserver>:<Port>";
Acquire::ftp::proxy "http://<yourproxyserver>:<Port>";

Se è richiesta un'autenticazione, il file di configurazione ha il seguente aspetto:

Acquire::http::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
Acquire::https::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
Acquire::ftp::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
    
risposta data Dirk 21.08.2012 - 12:03
0

Ho riscontrato errori simili durante l'esecuzione di comandi apt-get . Risulta che ho avuto il pannello di aggiornamento del software aperto sulla console.
Questo sembrava bloccare la riga di comando apt-get , ma non ne sono sicuro.

    
risposta data John 09.05.2012 - 19:15
0

Questo è un problema DNS. Controlla il tuo file /etc/resolv.conf .

per esempio nel mio caso quando ho avuto questo problema & amp; controllato questo file, il file era vuoto! ma dovrebbe contenere il tuo server dei nomi dns

la mia:

nameserver 192.168.10.x

192.168.10.x is my gateway ip address

    
risposta data parisssss 22.07.2013 - 09:53
0

Ho avuto questo errore. Seguendo un suggerimento dal supporto Linode, ho commentato tutte le linee IPv6 in / etc / hosts e poi apt-get ha iniziato a funzionare.

    
risposta data laura 05.02.2014 - 22:42
0

Per coloro che utilizzano EC2, ricordarsi di controllare che le impostazioni del gruppo di sicurezza consentano connessioni in uscita verso i siti Web da cui si effettua l'aggiornamento. Puoi impostare Tutte le impostazioni di traffico in uscita e vedere se funziona.

    
risposta data Kasperi 15.03.2014 - 19:08
0

La soluzione accettata non funziona per me. In primo luogo, solo apt-get update mi avvisa di Temporary failure resolving 'foo.com' , ma quando provo con nslookup foo.com o ping foo.com , funziona bene!

Il mio hack / fix incredibilmente sporco per risolvere questo bug, è quello di aggiungere manualmente i domini risolti a /etc/hosts con questo breve script:

resolveAptHosts()
{
    mapfile -t hosts < <(
        sed -n -r '/^#/d; s;deb(-src)? (http://|ftp://)?([^/ ]+).*;;p'\
        /etc/apt/sources.list | sort | uniq )
    # delete all hosts from /etc/hosts, e.g., from an earlier call
    sudo sed -i -r '/^[0-9]{1,3}(\.[0-9]{1,3}){3}[ \t]+('"$( printf '|%s'\
        "${hosts[@]//./\.}" | sed 's/^|//' )"')[ \t]*$/d' /etc/hosts
    for host in ${hosts[@]}; do
        ip=$( nslookup "$host" | sed -n -r 's|Address:[ \t]*([0-9.]+).*||p' |
              tail -1 )
        sudo bash -c "echo $ip $host >> /etc/hosts"
    done
}

Ora l'aggiornamento dovrebbe funzionare:

resolveAptHosts && sudo apt-get update

Se qualcuno sa perché questa soluzione funziona e come risolvere questo bug per davvero, sarò eternamente grato. Ho anche provato a utilizzare sudo apt-get update -o Acquire::ForceIPv4=true per escludere i problemi di risoluzione di IPv6, ma non è stato di alcun aiuto.

    
risposta data mxmlnkn 31.03.2018 - 03:44

Leggi altre domande sui tag