Website-Suche

Ein Anfängerleitfaden zur Verwendung des dpkg-Befehls in Linux


Der dpkg ist ein Paketmanager auf mittlerer Ebene, der es Ihnen ermöglicht, Softwarepakete auf Ihrem Linux-System zu installieren, zu entfernen und zu konfigurieren. In diesem Tutorial werden wir Ihnen die Grundlagen der Verwendung des dpkg-Befehls in Debian, Ubuntu und dessen Derivaten erklären.

Was ist dpkg in Linux?

dpkg steht für „Debian-Paket“ und ist das zugrunde liegende Werkzeug, das von Debian-basierten Linux-Distributionen wie Ubuntu verwendet wird. Es ist ein Befehlszeilenprogramm, mit dem Sie einzelne .deb-Pakete auf Ihrem System verwalten können.

Während dpkg mächtig ist, wird es als Werkzeug mittlerer Stufe angesehen, was bedeutet, dass es Abhängigkeiten nicht automatisch verwaltet. Dafür möchten Sie möglicherweise einen höherwertigen Paketmanager wie apt verwenden.

Grundlegende Syntax

Die grundlegende Syntax des dpkg-Befehls lautet:

dpkg [options] action

Häufige Aktionen:

  • -i, --install <package_file>: Installieren Sie das angegebene .deb-Paket.
  • -r, --remove <package_name>: Entfernt das angegebene Paket (behalten Sie jedoch die Konfigurationsdateien).
  • -P, --purge <package_name>: Entfernt das angegebene Paket und löscht seine Konfigurationsdateien.
  • -l, --list [package_name]: Listet Pakete auf, die dem angegebenen Muster entsprechen. Wenn kein Muster angegeben ist, werden alle installierten Pakete aufgelistet.
  • -s, --status <package_name>: Zeigt detaillierte Statusinformationen über das angegebene Paket an.
  • -L, --listfiles <package_name>: Listet die von dem angegebenen Paket installierten Dateien auf.
  • -S, --search <filename_pattern>: Nach einem Dateinamen aus installierten Paketen suchen.
  • -c, --contents <package_file>: Listet den Inhalt der angegebenen .deb-Paketdatei auf.

Wichtige Optionen:

  • -b, --build <directory>: Erstellen Sie ein .deb-Paket aus dem angegebenen Verzeichnis.
  • -A, --record-avail <package_file>: Aktualisiert die Paketverfügbarkeitsinformationen mit den Informationen aus der angegebenen .deb-Datei.
  • -E, --skip-same-version: Überspringen Sie die Installation eines Pakets, wenn dieselbe Version bereits installiert ist.
  • -G, --refuse-downgrade: Die Installation eines Pakets ablehnen, wenn bereits eine neuere Version installiert ist.
  • -R, --recursive: Alle Dateien, die Verzeichnisse sind, rekursiv verarbeiten.
  • -V, --verify <package_name>: Überprüfen Sie die Integrität des angegebenen Pakets, indem Sie dessen Dateien mit den aufgezeichneten Prüfsummen abgleichen.
  • --configure <package_name>: Konfigurieren Sie ein Paket, das entpackt, aber noch nicht konfiguriert wurde.
  • --unpack <package_file>: Entpacke die angegebene .deb-Paketdatei, konfiguriere sie jedoch nicht.
  • --no-act, --dry-run, --simulate: Führen Sie eine Simulation der Aktionen durch, die ausgeführt würden, ändern Sie das System jedoch nicht tatsächlich.

Häufige dpkg-Befehlsbeispiele

Hier sind einige der gebräuchlichsten dpkg-Befehle, die wir für die täglichen Aufgaben verwenden werden.

1. Ein Paket installieren

Um eine .deb-Paketdatei zu installieren, verwenden Sie den folgenden Befehl:

dpkg -i package.deb

Beispiel:

sudo dpkg -i google-chrome-stable_current_amd64.deb

Dieser Befehl installiert den Google Chrome-Browser auf Ihrem Debian-System.

2. Ein Paket entfernen

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

dpkg -r package_name

Beispiel:

sudo dpkg -r firefox-esr

Dieser Befehl entfernt den Firefox-Browser von Ihrem System.

3. Ein Paket bereinigen

Wenn Sie ein Paket zusammen mit seinen Konfigurationsdateien entfernen möchten, verwenden Sie den folgenden Befehl:

dpkg -P package_name

Beispiel:

sudo dpkg -P linux-image-5.10.0-11-amd64

Dieser Befehl entfernt das angegebene Linux-Kernel-Image sowie seine Konfigurationsdateien.

4. Installierte Pakete auflisten

Um alle auf Ihrem System installierten Pakete aufzulisten, verwenden Sie den folgenden Befehl:

dpkg -l

Sie können die Liste auch mit grep filtern:

dpkg -l | grep -i chrome

Dieser Befehl listet alle installierten Pakete auf, die "chrome" in ihrem Namen enthalten.

Beispielausgabe:

ii  google-chrome-stable                                    129.0.6668.70-1                                      amd64        The web browser from Google

5. Auflisten der von einem Paket installierten Dateien

Um alle von einem bestimmten Paket installierten Dateien aufzulisten, führen Sie aus:

dpkg -L package_name

Beispiel:

dpkg -L google-chrome-stable

Beispielausgabe:

/.
/etc
/etc/cron.daily
/opt
/opt/google
/opt/google/chrome
/opt/google/chrome/CHROME_VERSION_EXTRA
/opt/google/chrome/MEIPreload
/opt/google/chrome/MEIPreload/manifest.json
/opt/google/chrome/MEIPreload/preloaded_data.pb
/opt/google/chrome/PrivacySandboxAttestationsPreloaded
/opt/google/chrome/PrivacySandboxAttestationsPreloaded/manifest.json
/opt/google/chrome/PrivacySandboxAttestationsPreloaded/privacy-sandbox-attestations.dat
/opt/google/chrome/WidevineCdm
/opt/google/chrome/WidevineCdm/LICENSE
[...]

6. Herausfinden, zu welchem Paket eine Datei gehört

Sie können nach einer Datei suchen und herausfinden, zu welchem Paket sie gehört, indem Sie den Befehl verwenden:

dpkg -S /path/to/file

Um beispielsweise Pakete zu suchen, zu denen die Datei /bin/uname gehört, verwenden Sie den folgenden Befehl:

dpkg -S /bin/uname

Beispielausgabe:

coreutils: /bin/uname

Wie Sie sehen können, gehört die Datei /bin/uname zum Paket coreutils.

Ähnliche Lektüre: Wie man das Paket findet, das eine bestimmte Datei in Linux bereitstellt

7. Paketstatus anzeigen

Um den Status eines bestimmten Pakets zu überprüfen, verwenden Sie den folgenden Befehl:

dpkg -s package_name

Beispiel:

dpkg -s google-chrome-stable

Dieser Befehl zeigt den Status des Google Chrome-Pakets an, einschließlich, ob es installiert, konfiguriert oder nicht installiert ist.

Package: google-chrome-stable
Status: install ok installed
Priority: optional
Section: web
Installed-Size: 356732
Maintainer: Chrome Linux Team <chromium-dev@chromium.org>
Architecture: amd64
Version: 129.0.6668.70-1
Provides: www-browser
Depends: ca-certificates, fonts-liberation, libasound2 (>= 1.0.17), libatk-bridge2.0-0 (>= 2.5.3), libatk1.0-0 (>= 2.11.90), libatspi2.0-0 (>= 2.9.90), libc6 (>= 2.17), libcairo2 (>= 1.6.0), libcups2 (>= 1.7.0), libcurl3-gnutls | libcurl3-nss | libcurl4 | libcurl3, libdbus-1-3 (>= 1.9.14), libdrm2 (>= 2.4.75), libexpat1 (>= 2.1~beta3), libgbm1 (>= 17.1.0~rc2), libglib2.0-0 (>= 2.39.4), libgtk-3-0 (>= 3.9.10) | libgtk-4-1, libnspr4 (>= 2:4.9-2~), libnss3 (>= 2:3.35), libpango-1.0-0 (>= 1.14.0), libudev1 (>= 183), libvulkan1, libx11-6 (>= 2:1.4.99.1), libxcb1 (>= 1.9.2), libxcomposite1 (>= 1:0.4.4-1), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxkbcommon0 (>= 0.5.0), libxrandr2, wget, xdg-utils (>= 1.0.2)
Pre-Depends: dpkg (>= 1.14.0)
Description: The web browser from Google
 Google Chrome is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier.

Dies sind einige der häufigst verwendeten dpkg-Befehle. Natürlich gibt es viele, aber dies sollte Ihnen einen guten Ausgangspunkt für die Verwendung von dpkg auf Debian-basierten Systemen geben. Für weitere Details lesen Sie die Handbuchseiten:

man dpkg

Fazit

dpkg ist ein Kommandozeilen-Paketmanager zur Verwaltung von Softwarepaketen auf Debian-basierten Linux-Systemen. Obwohl es keine Abhängigkeiten verwaltet, hilft es Ihnen, Pakete manuell zu installieren, zu entfernen und zu konfigurieren.

Wie bereits erwähnt, ist dpkg ein Werkzeug auf mittlerer Ebene und verwaltet Abhängigkeiten nicht automatisch. Zur Auflösung von Abhängigkeiten verwendet man typischerweise apt oder apt-get, die höherstufige Frontends zu dpkg sind.

Beim Installieren oder Entfernen von Paketen ist es oft besser, apt oder apt-get zu verwenden, um sicherzustellen, dass Abhängigkeiten korrekt gehandhabt werden.

Verwandte Lektüre:

  • Beherrschung der APT-Linux-Befehle: Ein umfassender Leitfaden mit 15 praktischen Beispielen
  • Nala – Ein funktionsreiches Kommandozeilen-Frontend für den APT-Paketmanager