GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

dpkg-Befehl in Linux mit Beispielen

Einführung

dpkg in Linux ist der primäre Paketmanager für Debian und Debian-basierte Systeme wie Ubuntu. Das Tool installiert, erstellt, entfernt, konfiguriert und ruft Informationen für Debian-Pakete ab. Der Befehl funktioniert mit Paketen in .deb formatieren.

Diese Anleitung untersucht das dpkg Befehlssyntax und Optionen durch verschiedene Beispiele.

Voraussetzungen

  • Ein System mit einem Debian- oder einem Debian-basierten Betriebssystem.
  • Zugriff auf die Befehlszeile/das Terminal als sudo.
  • Eine .deb Datei, um mit den Beispielen zu arbeiten.

dpkg-Befehlssyntax

Die grundlegende Syntax für dpkg Befehl ist:

dpkg [options] action

Der Befehl akzeptiert eine Aktion und null oder mehr Optionen.

Das dpkg command fungiert als Frontend für die folgenden zwei Tools:

1. Das dpkg-deb Befehl, der Informationen über .deb anzeigt Pakete.

2. Die dpkg-query Befehl, der die Informationen aus der dpkg-Datenbank anzeigt.

Das dpkg Befehl führt Aktionen von dpkg-query aus und dpkg-deb . Daher zeigen die folgenden beiden Befehle dasselbe Ergebnis:

dpkg -l
dpkg-query -l

Die Aktion -l ist eine dpkg-query Aktion, die alle Pakete aus der dpkg-Datenbank auflistet. Das dpkg Der Befehl erkennt die fremden Optionen und führt dpkg-query aus automatisch.

dpkg-Befehlsoptionen

Die folgende Tabelle enthält kurze Beschreibungen häufig verwendeter Optionen und Aktionen für das dpkg Befehl.

Syntax Typ Beschreibung
-i <package.deb>
--install <package.deb>
Aktion Installiert das Paket.
--unpack <package.deb> Aktion Entpackt das Paket ohne Konfiguration.
--configure <package> Aktion Konfiguriert ein entpacktes Paket.
-r <package>
--remove <package>
Aktion Entfernt ein installiertes Paket. Entfernt keine Konfigurationsdateien und andere Daten.
-P <package>
--purge <package>
Aktion Löscht ein installiertes oder entferntes Paket. Löscht Konfigurationsdateien und andere Daten.
--get-selections Aktion Ruft Pakete mit aktueller Auswahl ab.
--set-selections Aktion Setzt Dateiauswahlstatus aus einer Datei, die von der Standardeingabe gelesen wird.
-b <directory>
--build <directory>
Aktion
(von dpkg-deb)
Erzeugt eine .deb Paket.
-c <package.deb>
--contents <package.deb>
Aktion
(von dpkg-deb)
Listen Paketinhalt.
-I <package.deb>
--info <package.deb>
Aktion
(von dpkg-deb)
Zeigt Informationen zu einem Paket an.
-l <pattern>
--list <pattern>
Aktion
(von dpkg-query)
Listet Pakete nach Übereinstimmung mit dem Muster auf.
-L <package>
--listfiles <package>
Aktion
(von dpkg-query)
Dateispeicherorte des installierten Pakets auflisten.
-s <package>
--status <package>
Aktion
(von dpkg-query)
Zeigt den Status eines installierten Pakets an.
-S <pattern>
--search <pattern>
Aktion
(von dpkg-query)
In installierten Paketen nach einem Muster suchen.
-R
--recursive
Option Handhabt Aktion rekursiv im Zielverzeichnis und Unterverzeichnissen.
--log=<file> Option Protokolliert Aktualisierungen von Statusänderungen in einer Datei.
--no-act
--dry-run
--simulate
Option Zeigt die Ausgabe, ohne Änderungen zu übernehmen. Vor der Aktion verwenden.

Aktionen, die das System ändern, wie das Installieren oder Entfernen von Paketen, erfordern sudo-Berechtigungen. Informationsbasierte Optionen erfordern keine besonderen Benutzerrechte.

Die privilegierte Zugriffsverwaltung trägt zur Sicherheit des Systems bei, indem reguläre Benutzer daran gehindert werden, systemweite Änderungen vorzunehmen.

dpkg-Befehlsbeispiele

Wenn Sie eine .deb Paket, fahren Sie mit den Beispielen unten fort. Wenn nicht, laden Sie eine einfache .deb herunter Paket zum Testen, wie zum Beispiel cowsay Kommandozeilen-Gimmick.

Führen Sie Folgendes aus, um die Datei abzurufen:

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

Bestätigen Sie die .deb Datei, die durch Auflisten des Verzeichnisinhalts mit dem Befehl ls heruntergeladen wurde:

ls -l *.deb

Die Ausgabe zeigt die .deb Paket.

Paket installieren

Installieren Sie ein Debian-Paket mit dem dpkg Befehl und das -i oder --install Stichwort:

sudo dpkg -i <package.deb>

Zum Beispiel:

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

Der Befehl erfordert sudo, um eine .deb zu installieren Paket.

Bekannte Pakete auflisten

Um alle bekannten Pakete aufzulisten, verwenden Sie -l Stichwort:

dpkg -l

Der Befehl druckt die Pakete im Pager-Modus. Navigieren Sie mit den Pfeiltasten oder verwenden Sie die Leertaste seitenweise auflisten. Drücken Sie q um die Liste zu verlassen. Die Spalten listen den Namen, die Version, die Architektur und die Beschreibung jedes Pakets auf.

Die ersten drei Spalten geben einen vollständigen Überblick über den Paketstatus:

1. Aktionsauswahl:

  • u - Unbekannt
  • i - Installieren
  • h - Halten
  • r - Entfernen
  • p - Löschen

2. Paketstatus:

  • n - Nicht installiert
  • c - Konfigurationsdateien
  • H - Halb installiert
  • U - Ausgepackt
  • F - Halb konfiguriert
  • W - Warten auf Auslöser
  • t - Ausstehende Auslöser
  • i - Installiert

3. Fehler-Flags:

  • R - Neuinstallation erforderlich
  • <empty> - Keine Fehler

Daher wird ein Paketstatus „ii " bedeutet dpkg Das zur Installation ausgewählte Paket wurde ohne Fehler erfolgreich installiert.

Um eine bestimmte Instanz aus der Liste abzurufen, verwenden Sie:

dpkg -l <package>

Zum Beispiel:

dpkg -l cowsay

Um mehrere Pakete aufzulisten, trennen Sie jeden Paketnamen durch ein Leerzeichen.

Paket entfernen

Um ein Debian-Paket zu entfernen, verwenden Sie den folgenden Befehl:

dpkg -r <package>

Um beispielsweise das Cowsay-Paket zu entfernen, verwenden Sie:

sudo dpkg -r cowsay

Das -r Option entfernt die Konfigurationsdateien nicht. Verwenden Sie diese Option, wenn Sie Software zur Neuinstallation entfernen.

Paket löschen

Um ein Paket zu löschen, verwenden Sie -P Möglichkeit:

sudo dpkg -P <package>

Zum Beispiel:

sudo dpkg -P cowsay

Der Befehl entfernt ein Paket zusammen mit allen Konfigurationsdateien. Verwenden Sie purge, um ein Programm vollständig aus dem System zu entfernen.

Paketinhalt anzeigen

Eine .deb Paket enthält mehrere Dateien und Verzeichnisse, die angeben, wo sich das Paket nach der Installation oder dem Entpacken befindet.

Um den Paketinhalt anzuzeigen, führen Sie Folgendes aus:

dpkg -c <package.deb>

Zum Beispiel:

dpkg -c cowsay*

Die Ausgabe zeigt alle Dateien und Verzeichnisse in der .deb Paketdatei. Das Beispielpaket befindet sich in /usr/games/ und /usr/share/ nach der Installation oder dem Auspacken.

Paket entpacken

Um das Paket ohne Konfiguration zu entpacken, verwenden Sie:

sudo dpkg --unpack <package.deb>

Zum Beispiel:

sudo dpkg --unpack cowsay*

Der Befehl entpackt alle Dateien aus dem Paket.

Paket konfigurieren

Zum Konfigurieren einer entpackten .deb Paket zu installieren oder ein installiertes Paket neu zu konfigurieren, verwenden Sie:

dpkg --configure <package>

Zum Beispiel:

sudo dpkg --configure cowsay

Das Entpacken und Konfigurieren eines Debian-Pakets unterteilt den Installationsprozess in zwei Schritte.

Überprüfen Sie, ob das Paket installiert ist

Um zu prüfen, ob ein Paket installiert ist, verwenden Sie das -s Stichwort:

dpkg -s <package>

Zum Beispiel:

dpkg -s cowsay

Der Status Zeile zeigt an, ob ein Paket installiert ist.

Paketinformationen anzeigen

Um Paketinformationen direkt aus der .deb anzuzeigen verwenden Sie den folgenden Befehl:

dpkg -I <package.deb>

Zum Beispiel:

dpkg -I cowsay*

Der Befehl zeigt Paketinformationen wie Größe, Abhängigkeiten und Dokumentationsverweise an. Verwenden Sie diese Methode, um Paketinformationen zu überprüfen, bevor Sie ein Paket installieren.

Alle Pakete aus einem Verzeichnis installieren

Verwenden Sie das -R Option vor -i um Pakete rekursiv zu installieren:

dpkg -R -i <directory>

Der Befehl installiert alle Pakete, die sich im Verzeichnis und allen Unterverzeichnissen befinden. Wenn mehrere Instanzen desselben Pakets entpackt werden, tritt nur eine Konfiguration auf.

Speicherorte der installierten Paketdateien auflisten

Um die Paketdateien und ihren Speicherort aufzulisten, verwenden Sie -L Stichwort:

dpkg -L <package>

Zum Beispiel:

dpkg -L cowsay

Die Ausgabe listet alle Dateiverzeichnisse und Dateispeicherorte auf.

Paketauswahl erhalten

Um die Paketnamen durch Auswahl abzurufen, verwenden Sie:

dpkg --get-selections

Die Liste zeigt Paketnamen und die Auswahlmarkierung.

Installierte Pakete auflisten

Verwenden Sie den folgenden Befehl, um eine Liste der installierten Pakete abzurufen:

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

Der Befehl macht Folgendes:

  • grep filtert Pakete heraus, die mit "deinstall" gekennzeichnet sind .
  • awk gibt nur die erste Spalte mit den Paketnamen aus.

Verwenden Sie diese Methode, wenn Sie eine Liste der installierten Programme benötigen.

Paketauswahl festlegen

Legen Sie die Paketauswahl für ein Paket im folgenden Format fest:

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

Der Befehl erwartet den Paketstatus als Standardeingabe. Die möglichen Bedingungen sind:

  • install
  • hold
  • deinstall
  • purge
  • unknown

Um beispielsweise die Aktualisierung eines Pakets zu stoppen, verwenden Sie:

echo cowsay hold | sudo dpkg --set-selections

Das Paket befindet sich im Hold-Zustand, was bedeutet, dass das Programm keine automatischen Updates erhält.

Paket mit Dateien suchen

Um ein Paket zu finden, das eine Datei enthält, verwenden Sie -S Möglichkeit:

dpkg -S <pattern>

Suchen Sie beispielsweise nach apt-get:

dpkg -S apt-get

Die Ausgabe zeigt apt-get gehört zu apt Paket.

Suchen Sie alternativ nach einer bestimmten Datei. Zum Beispiel:

dpgk -S gnu.cow

Die Ausgabe zeigt, dass die Datei zum Cowsay-Paket gehört.

Versionen vergleichen

Das dpkg command bietet ein Tool zum Vergleichen von Programmversionsnummern. Die Syntax lautet:

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

Die möglichen Vergleichsoperatoren sind:

  • lt - Streng kleiner als
  • le - Kleiner als oder gleich
  • eq - Gleich
  • ne - Ungleich
  • ge - Größer als oder gleich
  • gt - Streng größer als

dpkg gibt 0 (Erfolg) für einen korrekten Vergleich und einen Wert ungleich Null für einen Fehler zurück.

Vergleichen Sie beispielsweise die folgenden Versionsnummern:

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

Der Befehl gibt 0 zurück , was anzeigt, dass die erste Versionsnummer größer als die zweite ist.

Unterstützung mehrerer Architekturen

Alle Debian-Pakete enthalten Informationen zur unterstützten Architektur. Die Einschränkung stellt sicher, dass das System nicht mit Binärdateien für eine falsche Architektur endet.

Einige Architekturen unterstützen nativ verschiedene Architekturen. Beispielsweise unterstützt ein amd64 (ein 64-Bit-System) i386-Installationen (ein 32-Bit-System).

Das dpkg Befehl der Architektur des Hosts entspricht. Holen Sie sich die Informationen mit:

dpkg --print-architecture

Um die Unterstützung für fremde Architekturen anzuzeigen, verwenden Sie:

dpkg --print-foreign-architectures

Verwenden Sie zum Hinzufügen oder Entfernen von Architekturunterstützung:

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

In beiden Fällen listen die Fremdarchitekturen Updates mit den Änderungen sofort auf.

Überprüfen Sie die dpkg-Befehlsversion

Um zu überprüfen, welche dpkg-Version auf dem System läuft, verwenden Sie:

dpkg --version

Die Ausgabe zeigt die dpkg-Version zusammen mit der Architektur.

Hilfe drucken

Verwenden Sie den folgenden Befehl, um ein einfaches Hilfemenü anzuzeigen:

dpkg --help 

Verwenden Sie den man-Befehl, um die vollständige Dokumentation zu finden.


Ubuntu
  1. Linux-Quellbefehl mit Beispielen

  2. wc Linux-Befehl mit Beispielen

  3. Linux Tee-Befehl mit Beispielen

  4. Linux-Kopfbefehl mit Beispielen

  5. JQ-Befehl in Linux mit Beispielen

15 Linux-PS-Befehl mit Beispielen

Linux-CD-Befehl mit Beispielen

Wall-Befehl in Linux mit Beispielen

Sortierbefehl in Linux mit Beispielen

Linux-IP-Befehl mit Beispielen

w Befehl mit Beispielen in Linux erklärt