Differenza tra `dpkg -i` e` apt-get install`


16

Da tutte le altre domande e risposte (come: Qual è la differenza tra dpkg e aptitude / apt-get? ) Capisco che apt-getè un wrapper dpkge fornisce la gestione delle dipendenze.

Supponendo che sto installando qualcosa che non ha dipendenze (o sono anche installati allo stesso tempo) ci sarebbe qualche differenza tra installarlo usando apt-getvsdpkg

Ad esempio (un po 'di differenze concrete che sto cercando)

  • dire che dpkgnon posso scaricare il pkg da qualche parte, devo scaricare prima di iniziare l'installazione, mentre apt-getlo farò per mio conto.
  • dpkgnon configurerà pkg, copierà solo i file. apt-getconfigurerà anche.

...

Risposte:


16

dpkg -iinstalla *.debpacchetti, vale a dire pacchetti che hai già scaricato da qualche parte. Inoltre li configura, ma non scarica / installa dipendenze. Devi aver scaricato manualmente i file del pacchetto binario da qualche parte. Potrebbero anche esserci pericoli nel download di pacchetti da posizioni che non sono i repository che la distribuzione aveva incluso / abilitato per impostazione predefinita, poiché i pacchetti di terze parti possono essere di natura dannosa.


apt-get/aptitude install accede automaticamente ai repository e agli indici PPA abilitati, cerca il miglior candidato, lo scarica e tutte le sue dipendenze e li installa e li configura automaticamente.

Utilizzando apt-get install -f, è possibile installare automaticamente dipendenze mancanti di pacchetti, ad es. Installati tramite dpkg -i.


5
Una breve nota qui, apt-getpuò installare dipendenze dai pacchetti installati con dpkg -i. Corri apt-get install -fper farlo.
Noirscape

1
@ Ev1l0rd Corretto, l'ho aggiunto alla mia risposta.
Byte Commander

2
Un'altra differenza importante, e un caso per l'utilizzo di apt-geto aptitude, è che ricordano se un pacchetto è stato installato manualmente (richiesto specificamente) o se è stato installato per soddisfare una dipendenza. In questo modo, quando in seguito rimuovi un pacchetto, sono in grado di rimuovere automaticamente (o almeno parlarti di) pacchetti che sono stati "installati automaticamente e non sono più necessari". Se hai installato ciascun pacchetto con dpkgallora dovresti ricordare e rimuovere manualmente non solo il tuo pacchetto ma tutte le sue dipendenze (supponendo che nient'altro dipenda da loro).
Benjamin Staton,

1
@BenjaminStaton Bene, poiché dpkg -inon si preoccupano delle dipendenze, tutto ciò che è installato con esso è ovviamente installato "manualmente".
Byte Commander
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.