Apt-get impiega molto tempo per aggiornare \ upgrade


15

Sulla mia rete di lavoro qualsiasi comando apt-get (o aptitude) impiega molto tempo, sembra che gli amministratori abbiano bloccato alcune porte per questo (per motivi sconosciuti). Per esempio

sudo apt-get update

ci vogliono 2 giorni e tutto ciò che ottengo - un lungo elenco di risposte come

Get: 36 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 37 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 38 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 39 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 40 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]

Stessa situazione quindi provo a scaricare il software

Get:1 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:2 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:3 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:4 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:5 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]

C'è qualcosa che posso fare per cambiare porta per apt-get o qualcos'altro

Risposte:


11

I miei server Ubuntu sono sempre stati molto veloci negli apt-getaggiornamenti e negli upgrade. In genere le linee sullo schermo sono diventate troppo veloci per essere viste. Poi all'improvviso hanno rallentato a gattonare durante la notte.

Lo stava facendo IPv6.

Ho trovato la seguente soluzione:

sudo nano /etc/gai.conf

Rimuovi dal commento la seguente riga:

precedence ::ffff:0:0/96 100

Per me era la linea 54 (assicurati di non togliere il commento a quello che termina 10).

Salva ed esci.

sudo nano /etc/apt/apt.conf.d/99force-ipv4 # (this is to make a new file)

Aggiungi la seguente riga al nuovo file:

Aquire::ForceIPv4 false;

Salva ed esci.


3
Non sono un fan di queste risposte in quanto non esiste una vera spiegazione del perché questa sia una soluzione.
Gray Adams,

1
@GrayAdams Se hai una spiegazione puoi aggiungerla. Non ho niente. Avrei voluto :( Sapevo solo cosa funzionava per me, quindi l'ho pubblicato per altri per risolvere il problema, almeno temporaneamente.
Ryan

3
sudo nano /etc/gai.conf

aggiungi / decommenta queste righe:

reload yes
precedence ::ffff:0:0/96 100
precedence ::/0 10

quando ho aggiornato con le righe sopra ho /etc/gai.confrisolto e ha usato ipv4direttamente anziché ipv6installato rapidamente.


SÌ!!!!! Grazie!!! Non avevo idea di cosa stesse succedendo qui. Ho dovuto aspettare 10 minuti per ogni installazione apt-get.
Jacko,

1

Ti suggerisco di iniziare misurando il tuo throughput tipico di Internet / rete utilizzando uno dei siti di controllo delle prestazioni. Una possibilità è www.speedtest.net . Puoi anche utilizzare una semplice ricerca di Google per cercare altri siti che potresti utilizzare per testare la velocità della tua connessione Internet.

Se il test mostra che il problema non è una limitazione della tua connessione Internet, il passaggio successivo potrebbe essere quello di dare un'occhiata alle risposte a questa domanda:
Come posso ottenere un mirror vicino a me o scegliere un mirror più veloce? ?

Ti suggerisco di iniziare provando la risposta più popolare a questa domanda . Si riduce all'aggiunta delle due righe sottostanti nella parte superiore di /etc/apt/sources.list. Ciò dovrebbe incoraggiare il processo di aggiornamento a scegliere automaticamente un mirror di download con prestazioni migliori.

deb mirror://mirrors.ubuntu.com/mirrors.txt precise main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt precise-updates main restricted universe multiverse
  • Nota: le righe sopra sono pensate per essere utilizzate con Ubuntu 12.04 (Precise Pangolin) . Per le versioni precedenti sostituire precisenelle due righe sopra con il corrispondente nome in codice della versione che si sta utilizzando.

    Lucid(10.04), Maverick(10.10), Natty(11.04), Oneiric(11.10)

Se questo approccio non aiuta o semplicemente non è qualcosa che si desidera fare, si potrebbe anche considerare di lasciare che Update Manager tenti di scegliere un mirror " più veloce ". Questo è descritto più dettagliatamente nelle altre risposte alla domanda a cui ho fornito un link sopra.


La mia Internet funziona bene. Ho provato molti mirror - ma il risultato è lo stesso, non riesco a scaricare nulla dai siti
ShockwaveNN

@ShockwaveNN Se Internet funziona correttamente, non dovresti avere problemi a scaricare dalla maggior parte dei mirror. Non c'è nulla di significativamente diverso in termini di Internet che accade durante, diciamo, sudo apt-get updatee usando il firefoxbrowser. Hai provato l'avvio da un Live CD / USB e stai cercando sudo apt-get updatedi vedere se c'è una differenza? Se c'è, indicherebbe che qualcosa non va nella tua installazione di Ubuntu. Se ottieni lo stesso risultato, al momento non ho altre idee.
irrazionale John,

0

Innanzitutto, 2 fatti:
apt-get utilizza http (porta 80) per impostazione predefinita nelle distribuzioni standard di Linux.

apt-getgeneralmente scarica ~ 20 MB di dati per aggiornare gli elenchi. Se l'hai appena eseguito apt-get updateed eseguito di nuovo, scarica solo ~ 100 KB di dati.
Quindi, se sei in grado di navigare nel World Wide Web (ovvero siti Web utilizzando il browser) e stai utilizzando distribuzioni standard (non personalizzate per utilizzare qualsiasi altra porta), l'amministratore non ha bloccato nulla che ti impedisce di eseguire questo comando.
Il problema potrebbe essere che le richieste dalla tua macchina agli attuali server utilizzati per gli aggiornamenti da apt-get stanno affrontando alcuni problemi (cioè potrebbe essere solo un problema di download).
Per risolvere il tuo problema, i miei suggerimenti (mentre stai usando Ubuntu):

Apri update-manager-> fai clic sulle impostazioni in basso a sinistra -> fai clic sulla prima scheda software ubuntu -> fai clic sulla casella a discesa accanto a Scarica da opzione -> cambia il server in un posto più vicino alla tua posizione scegliendo altro nella elenco. Controllare anche il protocollo utilizzato per gli aggiornamenti. Dovrebbe essere http per utenti generici. -> Ora esegui sudo apt-get update o usa update manager per verificare la presenza di aggiornamenti. Ora le cose dovrebbero funzionare bene per te. Se le cose non funzionano anche dopo aver seguito questo, commenta qui.


Dal momento che non può aiutarti, sembra essere il problema dei file obsoleti o parziali raccolti durante il tentativo di aggiornare qualche tempo fa.
Ti suggerirei di eseguire questi comandi nel terminale:

sudo mv /var/cache/apt/archives/partial{,bakjune9}
sudo mv /var/lib/apt/lists{,bakjune9}

Questi comandi rinomineranno le directory in cui sono memorizzati i file quando apt-getli scaricano durante l'aggiornamento e l'aggiornamento. (Puoi rinominarli se qualcosa va storto. Quindi nessun rischio di peggiorare la situazione del presente)
Dopo quella corsa:

sudo apt-get update 

Scaricherà qualcosa come 20 MB di dati.
Se funziona correttamente, il problema è risolto.

Ora dovresti essere in grado di eseguire sudo apt-get upgradeper installare gli aggiornamenti.
In caso contrario, commenta qui di nuovo.


Questo non ha aiutato, cambio server in un altro paese e controllo, quel protocollo era "http" ma ho lo stesso problema. Inoltre posso navigare in Internet (tranne alcuni siti come youtube.com), e posso andare su archive.ubuntu.com/ubuntu nel mio browser e funziona benissimo
ShockwaveNN

Ho aggiunto i prossimi passi che ritengo dovrebbero aiutarti. Vedi se funziona.
drake01,

Neanche la seconda variante ha funzionato. Sono fermamente convinto che questo sia un problema con la connessione, qualche modo per diagnosticare la mia connessione per problemi?
ShockwaveNN

Hai aggiunto molte fonti software diverse dai principali repository? Se hai qualche dozzina di ppa inattivi, abbandonati o molto lenti, questo può rallentare l'aggiornamento. Dovrebbe anche darti un messaggio di errore ogni volta che non riesce a collegarsi a uno.
Marc,

0

Correre

sudo apt-get clean

prima di correre

sudo apt-get update
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.