GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Comando dpkg in Linux con esempi

Introduzione

dpkg in Linux è il gestore di pacchetti principale per i sistemi basati su Debian e Debian, come Ubuntu. Lo strumento installa, compila, rimuove, configura e recupera le informazioni per i pacchetti Debian. Il comando funziona con i pacchetti in .deb formato.

Questa guida esplora il dpkg sintassi e opzioni dei comandi attraverso vari esempi.

Prerequisiti

  • Un sistema con un sistema operativo Debian o basato su Debian.
  • Accesso alla riga di comando/terminale come sudo.
  • Un .deb file per lavorare con gli esempi.

Sintassi del comando dpkg

La sintassi di base per dpkg il comando è:

dpkg [options] action

Il comando accetta un'azione e zero o più opzioni.

Il dpkg comando funge da front-end per i seguenti due strumenti:

1. Il dpkg-deb comando, che mostra informazioni su .deb Pacchetti.

2. La dpkg-query comando, che mostra le informazioni dal database dpkg.

Il dpkg comando esegue azioni da dpkg-query e dpkg-deb . Pertanto, i seguenti due comandi mostrano lo stesso risultato:

dpkg -l
dpkg-query -l

L'azione -l è una dpkg-query azione che elenca tutti i pacchetti dal database dpkg. Il dpkg il comando rileva le opzioni esterne ed esegue dpkg-query automaticamente.

Opzioni comando dpkg

La tabella seguente fornisce brevi descrizioni delle opzioni e delle azioni comunemente utilizzate per dpkg comando.

Sintassi Digita Descrizione
-i <package.deb>
--install <package.deb>
Azione Installa il pacchetto.
--unpack <package.deb> Azione Decomprime il pacchetto senza configurazione.
--configure <package> Azione Configura un pacchetto decompresso.
-r <package>
--remove <package>
Azione Rimuove un pacchetto installato. Non rimuove i file di configurazione e altri dati.
-P <package>
--purge <package>
Azione Elimina un pacchetto installato o rimosso. Elimina i file di configurazione e altri dati.
--get-selections Azione Recupera i pacchetti con le selezioni correnti.
--set-selections Azione Imposta gli stati di selezione dei file da un file letto dallo standard input.
-b <directory>
--build <directory>
Azione
(da dpkg-deb)
Costruisce un .deb pacchetto.
-c <package.deb>
--contents <package.deb>
Azione
(da dpkg-deb)
Elenchi contenuto della confezione.
-I <package.deb>
--info <package.deb>
Azione
(da dpkg-deb)
Mostra informazioni su un pacchetto.
-l <pattern>
--list <pattern>
Azione
(dalla query dpkg)
Elenca i pacchetti facendo corrispondere il modello.
-L <package>
--listfiles <package>
Azione
(dalla query dpkg)
Elenca le posizioni dei file del pacchetto installato.
-s <package>
--status <package>
Azione
(dalla query dpkg)
Mostra lo stato di un pacchetto installato.
-S <pattern>
--search <pattern>
Azione
(dalla query dpkg)
Cerca un modello nei pacchetti installati.
-R
--recursive
Opzione Gestisce ricorsivamente l'azione nella directory e nelle sottodirectory di destinazione.
--log=<file> Opzione Registra gli aggiornamenti delle modifiche allo stato in un file.
--no-act
--dry-run
--simulate
Opzione Mostra l'output senza eseguire il commit delle modifiche. Utilizzare prima dell'azione.

Le azioni che modificano il sistema, come l'installazione o la rimozione di pacchetti, richiedono privilegi sudo. Le opzioni basate sulle informazioni non richiedono privilegi utente speciali.

La gestione degli accessi privilegiati aiuta a proteggere il sistema impedendo agli utenti regolari di apportare modifiche a livello di sistema.

Esempi di comando dpkg

Se hai un .deb pacchetto, continuare con gli esempi seguenti. In caso contrario, scarica un semplice .deb pacchetto per i test, come il cowsay espediente da riga di comando.

Per ottenere il file, esegui quanto segue:

wget http://archive.ubuntu.com/ubuntu/pool/universe/c/cowsay/cowsay_3.03+dfsg2-4_all.deb

Conferma il .deb file scaricato elencando il contenuto della directory con il comando ls:

ls -l *.deb

L'output mostra il .deb pacchetto.

Installa pacchetto

Installa un pacchetto Debian con dpkg comando e il -i o --install tag:

sudo dpkg -i <package.deb>

Ad esempio:

sudo dpkg -i cowsay_3.03+dfsg2-4_all.deb

Il comando richiede sudo per installare un .deb pacchetto.

Elenca i pacchetti conosciuti

Per elencare tutti i pacchetti conosciuti, usa il -l tag:

dpkg -l

Il comando stampa i pacchetti in modalità pager. Naviga utilizzando i tasti freccia oppure usa lo spazio elencare per pagina. Premi q per uscire dalla lista. Le colonne elencano il nome, la versione, l'architettura e la descrizione di ogni pacchetto.

Le prime tre colonne forniscono una panoramica completa dello stato del pacchetto:

1. Selezione azione:

  • u - Sconosciuto
  • i - Installa
  • h - Tieni
  • r - Rimuovi
  • p - Elimina

2. Stato del pacchetto:

  • n - Non installato
  • c - File di configurazione
  • H - Installato a metà
  • U - Disimballato
  • F - Configurato a metà
  • W - In attesa di trigger
  • t - Trigger in sospeso
  • i - Installato

3. Flag di errore:

  • R - Necessaria la reinstallazione
  • <empty> - Nessun errore

Pertanto, uno stato del pacchetto "ii " significa dpkg installato correttamente il pacchetto selezionato per l'installazione senza errori.

Per recuperare un'istanza specifica dall'elenco, utilizza:

dpkg -l <package>

Ad esempio:

dpkg -l cowsay

Per elencare più pacchetti, separa ogni nome di pacchetto con uno spazio.

Rimuovi pacchetto

Per rimuovere un pacchetto Debian, utilizzare il seguente comando:

dpkg -r <package>

Ad esempio, per rimuovere il pacchetto cowsay, utilizzare:

sudo dpkg -r cowsay

Il -r l'opzione non rimuove i file di configurazione. Utilizzare questa opzione durante la rimozione del software per la reinstallazione.

Pacchetto di eliminazione

Per eliminare un pacchetto, utilizza il -P opzione:

sudo dpkg -P <package>

Ad esempio:

sudo dpkg -P cowsay

Il comando rimuove un pacchetto insieme a tutti i file di configurazione. Usa l'eliminazione per rimuovere del tutto un programma dal sistema.

Mostra contenuto pacchetto

Un .deb pacchetto contiene diversi file e directory, che indicano dove risiede il pacchetto dopo l'installazione o la decompressione.

Per visualizzare il contenuto del pacchetto, esegui:

dpkg -c <package.deb>

Ad esempio:

dpkg -c cowsay*

L'output mostra tutti i file e le directory in .deb file del pacchetto. Il pacchetto di esempio risiede in /usr/games/ e /usr/share/ dopo l'installazione o il disimballaggio.

Disimballare il pacchetto

Per decomprimere il pacchetto senza configurazione, utilizzare:

sudo dpkg --unpack <package.deb>

Ad esempio:

sudo dpkg --unpack cowsay*

Il comando decomprime tutti i file dal pacchetto.

Configura pacchetto

Per configurare un .deb decompresso pacchetto o riconfigurare un pacchetto installato, utilizzare:

dpkg --configure <package>

Ad esempio:

sudo dpkg --configure cowsay

La decompressione e la configurazione di un pacchetto Debian divide il processo di installazione in due passaggi.

Verifica se il pacchetto è installato

Per verificare se un pacchetto è installato, utilizza il -s tag:

dpkg -s <package>

Ad esempio:

dpkg -s cowsay

Lo Stato la riga mostra se un pacchetto è installato.

Mostra informazioni sul pacchetto

Per mostrare le informazioni sul pacchetto direttamente da .deb file, utilizzare il seguente comando:

dpkg -I <package.deb>

Ad esempio:

dpkg -I cowsay*

Il comando mostra le informazioni sul pacchetto, come le dimensioni, le dipendenze e i riferimenti alla documentazione. Utilizzare questo metodo per controllare le informazioni sul pacchetto prima di installare un pacchetto.

Installa tutti i pacchetti da una directory

Usa il -R opzione prima di -i per installare i pacchetti in modo ricorsivo:

dpkg -R -i <directory>

Il comando installa tutti i pacchetti che si trovano nella directory e tutte le sottodirectory. Se più istanze dello stesso pacchetto vengono decompresse, si verifica una sola configurazione.

Elenca le posizioni dei file di pacchetto installati

Per elencare i file del pacchetto e la loro posizione, usa il -L tag:

dpkg -L <package>

Ad esempio:

dpkg -L cowsay

L'output elenca tutte le directory e le posizioni dei file.

Ottieni le selezioni di pacchetti

Per recuperare i nomi dei pacchetti in base alla selezione, utilizzare:

dpkg --get-selections

L'elenco mostra i nomi dei pacchetti e il contrassegno di selezione.

Elenca i pacchetti installati

Per recuperare un elenco di pacchetti installati, utilizzare il comando seguente:

dpkg --get-selections | grep -v "deinstall" | awk '{ print $1 }'

Il comando esegue le seguenti operazioni:

  • grep filtra i pacchetti contrassegnati da "deinstall" .
  • awk stampa solo la prima colonna con i nomi dei pacchetti.

Utilizzare questo metodo quando è necessario un elenco di programmi installati.

Imposta le selezioni dei pacchetti

Imposta la selezione del pacchetto per un pacchetto nel seguente formato:

echo <package> <state> | dpkg --set-selections

Il comando prevede lo stato del pacchetto come input standard. Le condizioni possibili sono:

  • install
  • hold
  • deinstall
  • purge
  • unknown

Ad esempio, per interrompere l'aggiornamento di un pacchetto, utilizzare:

echo cowsay hold | sudo dpkg --set-selections

Il pacchetto è in stato di attesa, il che significa che il programma non riceve aggiornamenti automatici.

Cerca il pacchetto contenente i file

Per trovare un pacchetto contenente un file, utilizza il -S opzione:

dpkg -S <pattern>

Ad esempio, cerca apt-get:

dpkg -S apt-get

L'output mostra apt-get appartiene all'apt pacchetto.

In alternativa, cerca un file specifico. Ad esempio:

dpgk -S gnu.cow

L'output mostra che il file appartiene al pacchetto cowsay.

Confronta le versioni

Il dpkg Il comando offre uno strumento per confrontare i numeri di versione del programma. La sintassi è:

dpkg --compare-versions <version number> <comparison operator> <version number>

I possibili operatori di confronto sono:

  • lt - Rigorosamente inferiore a
  • le - Minore o uguale a
  • eq - Uguale
  • ne - Non uguale
  • ge - Maggiore o uguale a
  • gt - Rigorosamente maggiore di

dpkg restituisce 0 (successo) per un confronto corretto e un valore diverso da zero per errore.

Ad esempio, confronta i seguenti numeri di versione:

dpkg --compare-versions 1.2-3 gt 1.1-4
echo $?

Il comando restituisce 0 , indicando che il numero della prima versione è maggiore della seconda.

Supporto multi-architettura

Tutti i pacchetti Debian contengono informazioni sull'architettura supportata. La restrizione garantisce che il sistema non finisca con i binari per un'architettura errata.

Alcune architetture supportano architetture diverse in modo nativo. Ad esempio, un amd64 (un sistema a 64 bit) supporta le installazioni i386 (un sistema a 32 bit).

Il dpkg il comando corrisponde all'architettura dell'host. Recupera le informazioni con:

dpkg --print-architecture

Per vedere il supporto dell'architettura straniera, usa:

dpkg --print-foreign-architectures

Per aggiungere o rimuovere il supporto dell'architettura, usa:

sudo dpkg --add-architecture <architecture name>
sudo dpkg --remove-architecture <architecture name>

In entrambi i casi, le architetture straniere elencano immediatamente gli aggiornamenti con le modifiche.

Verifica la versione del comando dpkg

Per verificare quale versione di dpkg è in esecuzione nel sistema, utilizzare:

dpkg --version

L'output mostra la versione di dpkg insieme all'architettura.

Stampa guida

Per mostrare un semplice menu di aiuto, usa il seguente comando:

dpkg --help 

Usa il comando man per trovare la documentazione completa.


Ubuntu
  1. Comando sorgente Linux con esempi

  2. Comando wc Linux con esempi

  3. Comando Tee Linux con esempi

  4. Comando testa di Linux con esempi

  5. Comando JQ in Linux con esempi

15 Comando Linux ps con esempi

Comando CD Linux con esempi

Wall Command in Linux con esempi

Ordina il comando in Linux con esempi

Comando IP Linux con esempi

w Comando spiegato con esempi in Linux