La mia domanda è semplice: voglio saperne di più su dpkg: cosa fa?
La mia domanda è semplice: voglio saperne di più su dpkg: cosa fa?
Risposte:
Come è stato detto, dpkgè uno strumento di sistema di basso livello per estrarre, analizzare, decomprimere e installare o rimuovere i file .deb. Tuttavia, è meglio utilizzare Software Centreo Gdebiinstallare o rimuovere i file .deb acquisiti da altre fonti poiché questi due programmi hanno una risoluzione delle dipendenze.
Tuttavia, ciò che non è stato spiegato è l' anatomia di un aggiornamento usando dpkge apt-get. Se, ad esempio, chiamiamo apt-getper installare cheese, l'albero delle dipendenze viene analizzato e vengono recuperati i file necessari apt-get, che poi li passa dpkgper estrarre, analizzare e installare nelle posizioni corrette e configurarli secondo gli script al loro interno.
Gli script letti dpkgall'interno di ciascun file .deb sono importanti in quanto forniscono informazioni al programma in merito all'installazione, rimozione e configurazione dei pacchetti. Quindi, quando guardi dentro, /var/log/dpkg.logci sono molti dettagli dettagliati su "trigger" e pacchetti che attraversano varie fasi di decompressione e configurazione. Nel suo blog, Raphael Hertzog (che è uno sviluppatore Debian chiave e manutentore del dpkgpacchetto) spiega di più sui trigger di dpkg e sul modo in cui dpkgispeziona e configura i pacchetti.
Ora stiamo arrivando al cuore di ciò che dpkgfa; gestisce abilmente i pacchetti Debian, piuttosto che le loro dipendenze. Con dpkg-deb, ad esempio, è possibile eseguire varie azioni nell'analisi e nell'estrazione manuale dei file dagli archivi .deb; vedere man dpkg-debper ulteriori informazioni.
Lo stato di ciascun pacchetto è elencato in /var/lib/dpkg/status, che può essere utilizzato con grepper verificare un pacchetto specifico. Dpkgpuò anche essere chiamato per riconfigurare particolari pacchetti che sono stati configurati (vedi man dpkg-reconfigure):
sudo dpkg-reconfigure <package>
Oppure per effettuare una configurazione di tutti i pacchetti non configurati se si è verificato un problema con un aggiornamento e la configurazione di alcuni pacchetti è ancora in sospeso:
sudo dpkg --configure -a
Per un ottimo tutorial che si concentra su dpkge apt-get, vedere i capitoli 5 e 6 del Manuale Debian , che è la migliore discussione disponibile. Entra man dpkgnel tuo terminale o visualizza le manpage di Ubuntu online per vedere tutte le molte opzioni disponibili, come usare dpkg -lper elencare i pacchetti attualmente installati.
dpkg è un modo da riga di comando per installare da un .deb o rimuovere pacchetti già installati. Ad esempio, se nella directory home fosse presente un file .deb, l'esecuzione dpkg -i yourpackage.debinstallerà quel pacchetto. Trovo questo utile almeno per me perché a volte quando si fa clic su un file .deb carica Ubuntu Software Center ma non lo installa mai o ha problemi.
Come sempre, il mancomando è un ottimo punto di partenza.
man dpkgpuò darti tutte le opzioni, tuttavia:
dpkg è un gestore di pacchetti per sistemi basati su Debian. Può installare, rimuovere e creare pacchetti, ma a differenza di altri sistemi di gestione dei pacchetti non può scaricare e installare automaticamente i pacchetti e le loro dipendenze.
Quindi sostanzialmente è apt-get senza risoluzione delle dipendenze, ed è usato per installare i file .deb.
Ti avverto però: la disinstallazione dei pacchetti utilizzando dpkg, nella maggior parte dei casi, NON è consigliata. È meglio utilizzare un gestore di pacchetti che gestisce le dipendenze, per garantire che il sistema sia in uno stato coerente.
Ad esempio, utilizzando dpkg -r zipè possibile rimuovere il pacchetto zip, ma eventuali pacchetti che dipendono da esso verranno comunque installati e potrebbero non funzionare più correttamente.
Puoi leggere qualcosa in più nella guida del server e altrove .