Che cosa fa "sudo apt-get update"?

461

Mi chiedo che cosa sudo apt-get update fa?

Che cosa aggiorna?

    
posta Elysium 27.11.2012 - 01:07
fonte

9 risposte

494

In poche parole, apt-get update in realtà non installa nuove versioni del software. Al contrario, aggiorna gli elenchi di pacchetti per gli aggiornamenti per i pacchetti che devono essere aggiornati, così come i nuovi pacchetti che sono appena arrivati nei repository.

  • apt-get update scarica gli elenchi di pacchetti dai repository e li "aggiorna" per ottenere informazioni sulle versioni più recenti dei pacchetti e sulle loro dipendenze. Lo farà per tutti i repository e i PPA. Dal link :

    % Bl0ck_qu0te%
  • apt-get upgrade recupererà nuove versioni di pacchetti esistenti sulla macchina se APT conosce queste nuove versioni tramite apt-get update .

    Da link :

    % Bl0ck_qu0te%
  • apt-get dist-upgrade farà lo stesso lavoro fatto da apt-get upgrade , inoltre gestirà in modo intelligente le dipendenze, quindi potrebbe rimuovere pacchetti obsoleti o aggiungerne di nuovi. Vedi qui: Che cosa è "dist- aggiornamento "e perché aggiorna più di" upgrade "?

    Da link :

    % Bl0ck_qu0te%

Puoi combinare i comandi con && come segue:

sudo apt-get update && sudo apt-get install foo bar baz foo-dev foo-dbg

o per ottenere versioni più recenti possibili secondo i requisiti di versione delle dipendenze:

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

Hai bisogno di sudo entrambe le volte, ma poiché sudo per impostazione predefinita non ti avvisa entro 5 minuti circa dall'ultima operazione sudo , ti verrà richiesta la password una sola volta (o per niente) ).

    
risposta data hexafraction 27.11.2012 - 01:17
fonte
43

Una ricerca su Google può darti la definizione di quasi tutti i comandi del terminale, così come --help nel terminale. Ad esempio,

apt-get --help

sudo apt-get update ha essenzialmente tre parti:

sudo

esegue il seguente comando con capacità super-utente (root). Molte azioni che richiedono la modifica dei file di sistema o l'installazione di applicazioni richiedono autorizzazioni aggiuntive per passare attraverso.

apt-get

è uno strumento da riga di comando che Ubuntu usa per installare, rimuovere e gestire pacchetti software

update

è un'opzione per il programma apt-get da utilizzare che aggiorna gli elenchi di pacchetti da un server su Internet. Gli elenchi dei pacchetti forniscono l'utilità apt-get con informazioni importanti sui pacchetti software che è possibile installare utilizzando apt-get. apt-get usa questi elenchi per determinare quale software installare quando viene fornito un comando da installare. Ad esempio

sudo apt-get install guake

installava il terminale Guake come è attualmente elencato negli elenchi di software locali del mio computer. Tuttavia, questa potrebbe non essere la versione appropriata o, se il programma è nuovo, potrebbe non essere affatto disponibile. Pertanto, quando si installa il software con apt-get, di solito si digita

sudo apt-get update
sudo apt-get install <package>

assicurando che apt-get sappia installare la versione più recente del pacchetto.

Un'altra fonte utile di informazioni è il sito help.ubuntu.com . Ad esempio, se hai cercato quel sito per apt-get , avresti trovato AptGet / Howto come uno dei risultati.

    
risposta data Alex 27.11.2012 - 01:16
fonte
18

L'esecuzione di sudo apt-get update fa semplicemente in modo che l'elenco dei pacchetti da tutti i repository e i PPA sia aggiornato. Se non si esegue questo comando, si potrebbero ottenere versioni precedenti di vari pacchetti che si stanno installando o, peggio, problemi di dipendenza. Se hai appena aggiunto un PPA e non ti sei aggiornato, nulla dal PPA funzionerà del tutto poiché non hai un elenco di pacchetti da quel PPA o repository.

In breve: è altamente raccomandato di eseguire sudo apt-get update prima di installare, ma è che può essere saltato se si è veramente urgenti a meno che non si siano cambiati i repository o PPA dall'ultimo apt-get update .

    
risposta data hexafraction 06.06.2012 - 01:21
fonte
12

È necessario eseguire apt-get update una volta prima di installare nuovi pacchetti poiché questo aggiorna le informazioni del repository locale. Se installi più pacchetti poco dopo l'altro, non è necessario eseguire apt-get update . Inoltre, puoi installare più pacchetti contemporaneamente se digiti % Co_de%

    
risposta data Jason Petrilla 06.06.2012 - 01:23
fonte
10

Aggiorna l'elenco dei software disponibili sul tuo computer.

Il tuo computer ha una lista (come un catalogo) che contiene tutto il software disponibile che i server Ubuntu hanno a disposizione. Ma il software e le versioni disponibili potrebbero cambiare, quindi un "aggiornamento" colpirà il server e vedrà quale software è disponibile per aggiornare i suoi elenchi locali (o cataloghi).

Tieni presente che update è diverso da upgrade . L'aggiornamento, come sopra menzionato, recupera il software disponibile e aggiorna gli elenchi mentre upgrade installa nuove versioni del software installato sul tuo computer (effettivi aggiornamenti software).

Per aggiornare effettivamente il tuo software (non "aggiornare" gli elenchi), esegui il comando

sudo apt-get upgrade

che di solito viene eseguito dopo un "aggiornamento".

    
risposta data Sam 27.11.2012 - 01:21
fonte
4

Quando installi i pacchetti dalla riga di comando con sudo apt-get install ... (o sudo aptitude install ... ), o quando li aggiorni dalla riga di comando (con upgrade o dist-upgrade invece di install ), le seguenti informazioni è ottenuto dalla configurazione del tuo sistema locale e non da Internet:

  1. quali pacchetti sono disponibili

  2. quali versioni sono disponibili

  3. dove i pacchetti disponibili devono essere recuperati da

L'esecuzione di sudo apt-get update (o sudo aptitude update ) lo aggiorna sul tuo sistema locale. Questo è il passaggio che in realtà recupera informazioni su quali pacchetti possono essere installati, compresi gli aggiornamenti dei pacchetti di pacchetti attualmente installati , dai sorgenti di Internet.

Quando si installano pacchetti con un'interfaccia GUI (Update Manager, Software Center o Synaptic Package Manager), il lavoro di sudo apt-get update viene eseguito automaticamente. Quando installi i pacchetti dalla riga di comando, non lo è, e dovresti sempre farlo da solo se non lo hai fatto molto recentemente .

Poiché le informazioni su quali versioni aggiornate dei pacchetti sono disponibili si ottengono eseguendo sudo apt-get update (o sudo aptitude update ), è consigliabile eseguirlo prima di installare qualsiasi pacchetto e necessario eseguirlo per installare gli ultimi aggiornamenti, < em> anche se non hai aggiunto o rimosso alcuna Sorgente software (come un PPA) .

Si noti che se si eseguiranno più operazioni di gestione dei pacchetti nello stesso periodo, non è necessario eseguire sudo apt-get update prima di ciascuna. È solo se le informazioni non sono state aggiornate per un po 'di tempo, quindi assicurati di eseguirlo.

    
risposta data Eliah Kagan 06.06.2012 - 01:59
fonte
4

Come Eliah Kagan ha menzionato sopra, dovresti aspettarti che un'applicazione GUI esegua apt-get update prima di apt-get install / apt-get upgrade , ma ho appena scoperto un errore interessante 404, su una relativamente nuova macchina VM offensiva, che mi ha bloccato per un minuto.

Dalla riga di comando, ho eseguito apt-get update , quindi ho provato di nuovo il comando Strumenti di sistema / Aggiornamento software e questa volta è stato eseguito senza errori 404.

Quindi, suppongo che non si possa sempre presumere che apt-get update venga eseguito da applicazioni GUI ...

    
risposta data mikepratt 02.04.2015 - 04:58
fonte
2

Come affermato da molte persone prima di me, questo aggiorna il tuo repository locale (lista dei pacchetti).

Potresti incorrere in problemi se tenti di installare

apt-get install foobar

e foobar o una dipendenza non hanno la loro ultima versione nel repository. Questo può essere particolarmente problematico se si installa un file .deb manualmente o un ppa da una terza parte.

Fondamentalmente garantisce che il tuo elenco corrisponda all'elenco principale .

    
risposta data N8tron 06.06.2012 - 01:38
fonte
2

Consideriamo l'esempio dell'installazione di VLC media player su Ubuntu:

sudo apt-get update

Controllerà i repository per gli aggiornamenti disponibili.

considerando che

sudo apt-get install vlc vlc-plugin-pulse mozilla-plugin-vlc

installerà VLC media player dai repository che abbiamo cercato.

Se avevi effettuato il login come utente root (amministratore), non devi usare sudo , perché hai già i privilegi di super utente.

    
risposta data Praveen Vinny 27.11.2012 - 08:24
fonte

Leggi altre domande sui tag