Dpkg/man

Aus Foxwiki

dpkg(1) dpkg suite dpkg(1)

BEZEICHNUNG

dpkg - Paketverwalter für Debian

ÜBERSICHT

dpkg [Option …] Aktionen

WARNUNG

Dieses Handbuch ist für Benutzer gedacht, die die Befehlszeilenoptionen und Paketzustände von dpkg
detaillierter verstehen wollen, als durch dpkg --help beschrieben ist.
Es sollte nicht von Paketbetreuern verwendet werden, die verstehen wollen, wie dpkg ihr Paket
installieren wird. Die Beschreibung der Aktionen von dpkg beim Installieren und Entfernen von Paketen
ist besonders unzulänglich.

BESCHREIBUNG

dpkg ist ein Werkzeug mittlerer Stufe, um Debian-Pakete zu installieren, zu bauen, zu entfernen und zu
verwalten. Die primäre und benutzerfreundlichere Oberfläche für dpkg als CLI (Befehlszeilenwerkzeug)
ist apt(8) und als TUI (Terminal-Benutzeroberfläche) ist aptitude(8). dpkg selbst wird komplett über
Befehlszeilenoptionen gesteuert, die aus genau einer Aktion und Null oder mehreren Optionen bestehen.
Der Aktionsparameter teilt dpkg mit, was zu tun ist, und die Optionen steuern die Aktionen in
irgendeiner Weise.
dpkg kann auch als Oberfläche für dpkg-deb(1) und dpkg-query(1) verwendet werden. Die Liste der
unterstützten Aktionen kann im Abschnitt AKTIONEN gefunden werden. Falls so eine Aktion angetroffen
wird, führt dpkg einfach dpkg-deb oder dpkg-query mit den übergebenen Parametern aus, allerdings
werden derzeit keine spezifischen Optionen an diese übergeben. Um solche Optionen zu verwenden, müssen
die Backends direkt aufgerufen werden.

INFORMATIONEN ÜBER PAKETE

dpkg verwaltet einige nützliche Informationen über verfügbare Pakete. Die Informationen sind in drei
Klassen unterteilt: Status, Auswahlstatus und Schalter. Diese Werte sind hauptsächlich zur Änderung
durch dselect gedacht.

Paketstatus

not-installed (nicht-installiert)
    Das Paket ist nicht auf Ihrem System installiert.
config-files (Config-Dateien)
    Nur  die Konfigurationsdateien oder das Skript postrm und die von ihm für das Entfernen des Pakets
    benötigten Daten existieren auf dem System.
half-installed (halb-installiert)
    Die Installation des Paketes wurde begonnen, aber aus irgendeinem Grund nicht abgeschlossen.
unpacked (entpackt)
    Das Paket ist entpackt, aber nicht konfiguriert.
half-configured (halb-konfiguriert)
    Das Paket ist entpackt und die Konfiguration wurde begonnen,  aber  aus  irgendeinem  Grund  nicht
    abgeschlossen.
triggers-awaited (Trigger-erwartend)
    Das Paket erwartet Trigger-Verarbeitung durch ein anderes Paket.
triggers-pending (Trigger-anhängig)
    Das Paket wurde getriggert.
installed (installiert)
    Das Paket ist korrekt entpackt und konfiguriert.

Paketauswahlstatus

install (installiere)
    Das Paket ist zur Installation ausgewählt.
hold (halten)
    Eine mit halten markierte Version wird auf der gleichen Version gehalten, d.h. keine automatischen
    Installationen,  Upgrades  oder  Entfernungen  werden mit ihnen durchgeführt, außer diese Aktionen
    werden explizit angefordert oder mit der Option --force-hold automatisch durchgeführt.
deinstall (deinstalliere)
    Das  Paket  ist  zur  Deinstallation  ausgewählt  (d.h.  wir  wollen  alle   Dateien   außer   den
    Konfigurationsdateien entfernen).
purge (vollständig löschen)
    Das Paket ist zum vollständigen Löschen („purge“) ausgewählt (d.h. wir wollen alle Dateien aus den
    Systemverzeichnissen inklusive der Konfigurationsdateien entfernen).
unknown (unbekannt)
    Die  Paketauswahl ist unbekannt. Ein Paket, das auch im Zustand not-installed und ohne Schalter ok
    ist, wird beim nächsten Abspeichern der Datenbank vergessen.

Paketschalter

ok  Ein mit ok markiertes Paket ist  in  einem  bekannten  Zustand,  kann  aber  weitere  Verarbeitung
    benötigen.
reinstreq (Neuinstnotwendig)
    Ein  mit  Neuinstnotwendig  markiertes  Paket ist defekt und muss erneut installiert werden. Diese
    Pakete  können  nicht  entfernt  werden,  es  sei  denn,  Sie  erzwingen  dies  mit   der   Option
    --force-remove-reinstreq.

AKTIONEN

-i, --install Paketdatei …
    Installiert  das  Paket.  Falls die Option --recursive oder -R angegeben ist, muss sich Paketdatei
    stattdessen auf ein Verzeichnis beziehen.
    Die Installation besteht aus folgenden Schritten:
    1.  Die Steuerdateien aus dem neuen Paket wird entnommen.
    2.  Falls eine andere Version des gleichen Pakets vor der neuen Installation installiert war, dann
        wird das prerm-Skript des alten Paketes ausgeführt.
    3.  Das preinst-Skript wird ausgeführt, falls dies vom Paket bereitgestellt wird.
    4.  Die neuen Dateien werden entpackt und gleichzeitig die alten Dateien gesichert, so dass diese,
        falls etwas schief geht, wiederhergestellt werden können.
    5.  Falls eine andere Version des gleichen Pakets vor der neuen Installation installiert war, dann
        wird das postrm-Skript des alten Paketes ausgeführt. Beachten Sie, dass dieses Skript nach dem
        preinst-Skript des neuen Pakets ausgeführt wird, da neue Dateien zeitgleich zu der  Entfernung
        alter Dateien geschrieben werden.
    6.  Das  Paket  wird  konfiguriert. Lesen Sie --configure für detaillierte Informationen, wie dies
        geschieht.
--unpack Paketdatei …
    Entpackt das Paket, konfiguriert es aber nicht. Falls die Option  --recursive  oder  -R  angegeben
    ist, muss sich Paketdatei stattdessen auf ein Verzeichnis beziehen.
    Verarbeitet Trigger für Pre-Depends, außer --no-triggers wurde angegeben.
--configure Paket …|-a|--pending
    Konfiguriert  ein  entpacktes,  aber  noch  nicht  konfiguriertes  Paket.  Falls -a oder --pending
    anstelle von Paket angegeben  ist,  werden  alle  entpackten,  aber  nicht  konfigurierten  Pakete
    konfiguriert.
    Um  ein  Paket  zu  rekonfigurieren, das bereits konfiguriert wurde, verwenden Sie stattdessen den
    Befehl dpkg-reconfigure(8). Dieser Befehl ist Teil des Projekts debconf.
    Die Konfiguration besteht aus folgenden Schritten:
    1.  Die Conffiles werden entpackt und gleichzeitig die alten Conffiles gesichert, so  dass  diese,
        falls etwas schief geht, wiederhergestellt werden können.
    2.  Das postinst-Skript wird ausgeführt, falls dies vom Paket bereitgestellt wird.
    Verarbeitet Trigger, außer --no-triggers wurde angegeben.
--triggers-only Paket …|-a|--pending
    Verarbeitet  nur  Trigger (seit Dpkg 1.14.17). Alle ausstehenden Trigger werden verarbeitet. Falls
    Paketnamen übergeben werden, werden nur die Trigger dieser Pakete verarbeitet, jedes genau einmal,
    wo notwendig. Die Verwendung dieser Option kann Pakete  in  die  unzulässigen  Zustände  triggers-
    awaited  und  triggers-pending bringen. Durch die Ausführung von „dpkg --configure --pending“ kann
    dies später behoben werden.
-r, --remove Paket…|-a|--pending
    Entfernt ein installiertes Paket. Dies entfernt alles außer Conffiles und anderen Daten,  die  vom
    Skript  postrm  bereinigt  werden, da damit eine erneute Konfiguration des Paketes vermieden wird,
    falls es später nochmals installiert  wird.  Conffiles  sind  Konfigurationsdateien,  die  in  der
    Steuerdatei  DEBIAN/conffiles  aufgeführt  sind.  Falls es keine Steuerdatei DEBIAN/conffiles oder
    kein Skript DEBIAN/postrm gibt, ist dieser Befehl äquivalent zum Aufruf von --purge.  Falls  statt
    des  Paketnamens  -a  oder --pending angegeben wird, werden alle Pakete, die entpackt, aber in der
    Datei /var/lib/dpkg/status zur Entfernung vorgemerkt sind, entfernt.
    Entfernung eines Paketes besteht aus den folgenden Schritten:
    1.  Das prerm-Skript wird ausgeführt.
    2.  Die installierten Dateien werden entfernt.
    3.  Das postrm-Skript wird ausgeführt.
    Verarbeitet Trigger, außer --no-triggers wurde angegeben.
-P, --purge Paket…|-a|--pending
    Löscht ein installiertes oder bereits entferntes Paket vollständig.  Damit  wird  alles  entfernt,
    auch Conffiles und alles, was im Skript postrm bereinigt wird. Falls statt des Paketnamens -a oder
    --pending  angegeben  wird,  werden  alle  Pakete,  die  entpackt oder entfernt, aber in der Datei
    /var/lib/dpkg/status zum vollständigen Löschen vorgemerkt sind, vollständig gelöscht.
    Hinweis: Einige Konfigurationsdateien können dpkg nicht bekannt sein, da  sie  separat  durch  die
    Konfigurationsskripte  angelegt  und  verwaltet  werden. In diesem Fall wird dpkg sie nicht selbst
    entfernen, sondern das Skript postrm (das von dpkg aufgerufen wird) des Pakets muss  sich  während
    des  vollständigen  Löschens  um das Entfernen kümmern. Natürlich betrifft dies nur Dateien in den
    Systemverzeichnissen, nicht Konfigurationsdateien, die in die Home-Verzeichnisse der individuellen
    Benutzer geschrieben werden.
    Endgültiges Löschen eines Paketes besteht aus den folgenden Schritten:
    1.  Das Paket wird entfernt, falls es noch nicht entfernt ist. Lesen Sie --remove für detaillierte
        Informationen, wie dies erfolgt.
    2.  Das postrm-Skript wird ausgeführt.
    Verarbeitet Trigger, außer --no-triggers wurde angegeben.
-V, --verify [Paketname …]
    Überprüft  die  Integrität  von  Paketname  oder  allen  Paketen,  falls  nicht  angegeben,  indem
    Informationen  aus  den  durch  ein  Paket  installierten  Dateien  mit  den in der dpkg-Datenbank
    gespeicherten Dateimetadateninformationen verglichen werden (seit Dpkg  1.17.2).  Die  Quelle  der
    Dateimetadateninformationen in der Datenbank ist das Binärpaket selbst. Diese Metadaten werden zum
    Zeitpunkt des Entpackens während des Installationsprozesses gesammelt.
    Derzeit  ist  die  einzige  funktionale  Prüfung  eine Md5sum-Überprüfung der Dateiinhalte mit dem
    gespeicherten Wert in der Datei-Datenbank. Er wird nur geprüft, falls die Datenbank die Md5sum der
    Datei enthält. Um auf fehlende Metadaten in der Datenbank  zu  prüfen,  kann  der  Befehl  --audit
    verwandt  werden.  Dies  ist  nur eine Integritätsprüfung und sollte nicht als irgend eine Art von
    Sicherheitsüberprüfung angesehen werden.
    Das Ausgabeformat kann mit der Option --verify-format ausgewählt werden.  Standardmäßig  wird  das
    Format rpm verwandt. Das kann sich in der Zukunft aber ändern und daher sollten Programme, die die
    Ausgabe dieses Befehls auswerten, explizit das Format angeben, das sie erwarten.
-C, --audit [Paketname …]
    Führt  Plausibilitäts- und Konsistenzprüfungen der Datenbank für Paketname oder alle Pakete, falls
    das Argument fehlt, durch (pro-Paket-Prüfungen  seit  Dpkg  1.17.10).  Sucht  beispielsweise  nach
    Paketen,  die  auf  Ihrem  System  nur  teilweise  installiert  wurden oder fehlende, falsche oder
    veraltete Steuerdaten oder -dateien haben. dpkg wird einen Vorschlag machen,  was  mit  ihnen  zur
    Korrektur gemacht werden sollte.
--update-avail [Packages-Datei]
--merge-avail [Packages-Datei]
    Aktualisiert  dpkgs und dselects Verständnis darüber, welche Pakete verfügbar sind. Mit der Aktion
    --merge-avail wird alte Information mit der Information aus  der  Packages-Datei  zusammengeführt.
    Mit  der  Aktion  --update-avail wird die alte Information durch die Information aus der Packages-
    Datei ersetzt. Die mit Debian vertriebene  Packages-Datei  heißt  einfach  „Packages“.  Falls  das
    Argument  Packages-file  fehlt  oder  „-“ benannt ist, wird es aus der Standardeingabe lesen (seit
    Dpkg   1.17.7).   dpkg   hält   seine   Aufzeichnungen   über   die    verfügbaren    Pakete    in
    /var/lib/dpkg/available.
    Ein  einfacher  Befehl,  um die Datei available in einem Rutsch zu holen und zu aktualisieren, ist
    dselect update. Beachten Sie, dass diese Datei nahezu nutzlos ist, falls Sie nicht dselect sondern
    eine APT-basierte Oberfläche verwenden: APT verfügt über  sein  eigenes  System,  die  verfügbaren
    Pakete zu überwachen.
-A, --record-avail Paketdatei …
    Aktualisiert  mit  den  Informationen  aus  dem  Paket  Paketdatei  dpkgs und dselects Verständnis
    darüber, welche Pakete verfügbar sind. Falls die Option --recursive oder -R  angegeben  ist,  muss
    sich Paketdatei stattdessen auf ein Verzeichnis beziehen.
--forget-old-unavail
    Jetzt  veraltet  und ohne Funktion, da dpkg automatisch nicht installierte nicht verfügbare Pakete
    vergisst (seit Dpkg 1.15.4). Allerdings nur solche, die keine Benutzerinformationen enthalten, wie
    Paketauswahlen.
--clear-avail
    Löscht die existierenden Informationen darüber, welche Pakete verfügbar sind.
--get-selections [Paket-Name-Muster …]
    Holt die Liste von Paketauswahlen und schreibt sie in  die  Standardausgabe.  Ohne  Muster  werden
    nicht-installierte Pakete (d.h. solche, die vorher „vollständig gelöscht“ wurden) nicht angezeigt.
--set-selections
    Setzt  die  Paketauswahl durch Einlesen einer Datei von der Standardeingabe. Diese Datei sollte im
    Format „Paket Zustand“ sein, wobei Zustand einer aus install,  hold,  deinstall  oder  purge  ist.
    Leerzeilen und Kommentarzeilen (beginnend mit ‚#’) sind auch erlaubt.
    Die  Datei  available  muss für diesen Befehl aktuell sein, damit dies von Nutzen ist, andernfalls
    werden unbekannte Pakete mit  einer  Warnung  ignoriert.  Siehe  die  Befehle  --update-avail  und
    --merge-avail für weitere Informationen.
--clear-selections
    Setzt  den  erbetenen  Zustand  von jedem nicht-essenziellen Paket auf „Deinstallation“ (seit Dpkg
    1.13.18). Dies ist dazu gedacht, direkt vor --set-selections verwendet zu werden, um jedes  Paket,
    das nicht in der Liste von --set-selections vorkommt, zu deinstallieren.
--yet-to-unpack
    Sucht  nach  Paketen,  die zur Installation ausgewählt wurden, die aber aus irgendeinem Grund noch
    nicht installiert wurden.
    Hinweis: Dieser Befehl verwendet sowohl die Datei „available“ als auch die Paketauswahlen.
--predep-package
    Gibt ein einzelnes Paket aus, das das Ziel einer oder mehrerer  relevanter  Vorabhängigkeiten  ist
    und selbst keine unerfüllten Vorabhängigkeiten hat.
    Falls  ein  solches  Paket  vorhanden ist, wird es als Dateieintrag für „Packages“ ausgegeben, der
    passend weiterverarbeitet werden kann.
    Hinweis: Dieser Befehl verwendet sowohl die Datei „available“ als auch die Paketauswahlen.
    Liefert 0 zurück, wenn ein Paket ausgegeben wird und 1, wenn kein passendes  Paket  verfügbar  ist
    und 2 im Fehlerfall.
--add-architecture Architektur
    Fügt  Architektur  zu  der  Liste  von Architekturen hinzu, für die Pakete ohne die Verwendung von
    --force-architecture installiert werden können (seit Dpkg 1.16.2). Die Architektur, für  die  dpkg
    gebaut wurde (d.h. die Ausgabe von --print-architecture), ist immer Teil der Liste.
--remove-architecture Architektur
    Entfernt  Architektur  von  der  Liste  von  Architekturen, für die Pakete ohne die Verwendung von
    --force-architecture installiert werden können (seit Dpkg 1.16.2). Falls die  Architektur  derzeit
    in   der   Datenbank   benutzt   wird,   dann   wird  die  Durchführung  verweigert,  falls  nicht
    --force-architecture verwandt wird. Die Architektur, für die dpkg gebaut wurde (d.h.  die  Ausgabe
    von --print-architecture), kann niemals von der Liste entfernt werden.
--print-architecture
    Gibt die Architektur der Pakete aus, die dpkg installiert (beispielsweise „i386“).
--print-foreign-architectures
    Gibt  eine  durch  Zeilenumbrüche getrennte Liste von zusätzlichen Architekturen aus, für die dpkg
    konfiguriert ist, Paketinstallationen zu erlauben (seit Dpkg 1.16.2).
--assert-help
    Gibt Hilfe zu den Optionen --assert-Funktionalität aus (seit Dpkg 1.21.0).
--assert-Funktionalität
    Bestätigt, dass dpkg die erbetene Funktionalität unterstützt. Liefert 0, falls die  Funktionalität
    voll  unterstützt  wird,  1,  falls  die Funktionalität bekannt ist, aber noch keine Unterstützung
    dafür geliefert werden kann und 2, falls die Funktionalität unbekannt ist. Die aktuelle Liste  von
    bestätigbaren Funktionalitäten ist wie folgt:
    support-predepends
        Unterstützt das Feld Pre-Depends (seit Dpkg 1.1.0).
    working-epoch
        Unterstützt Epochen in Versionszeichenketten (seit Dpkg 1.4.0.7).
    long-filenames
        Unterstützt in deb(5)-Archiven lange Dateinamen (seit Dpkg 1.4.1.17).
    multi-conrep
        Unterstützt mehrere Conflicts und Replaces (seit Dpkg 1.4.1.19).
    multi-arch
        Unterstützt Multi-Arch-Felder und deren Semantik (seit Dpkg 1.16.2).
    versioned-provides
        Unterstützt versionierte Provides (seit Dpkg 1.17.11).
    protected-field
        Unterstützt das Feld Protected (seit Dpkg 1.20.1).
--validate-Sache Zeichenkette
    Bestätigt,  dass  die  Sachenzeichenkette  eine korrekte Syntax hat (seit Dpkg 1.18.16). Liefert 0
    zurück, falls die Zeichenkette gültig ist, 1 falls die Zeichenkette ungültig ist, aber in lockeren
    Umgebungen akzeptiert werden könnte und 2, falls die Zeichenkette ungültig ist. Die aktuelle Liste
    der überprüfbaren Sachen ist:
    pkgname
        Überprüft den übergebenen Paketnamen (seit Dpkg 1.18.16).
    trigname
        Überprüft den übergebenen Triggernamen (seit Dpkg 1.18.16).
    archname
        Überprüft den übergebenen Architekturnamen (seit Dpkg 1.18.16).
    version
        Überprüft die übergebene Version (seit Dpkg 1.18.16).
--compare-versions Ver1 op Ver2
    Vergleicht Versionsnummern, wobei Op ein binärer Operator ist. dpkg liefert wahr  (0),  falls  die
    angegebene  Bedingung erfüllt ist und falsch (1) andernfalls. Es gibt zwei Gruppen von Operatoren,
    die sich in der Behandlung von leeren Ver1 oder Ver2 unterscheiden. Die folgenden behandeln  leere
    Versionen  als  jünger  als  jede  andere Version: lt le eq ne ge gt. Die folgenden behandeln eine
    leere Version als älter als jede Version: lt-nl le-nl ge-nl gt-nl.  Die  folgenden  sind  nur  aus
    Kompatibilität  zu der Steuerdateisyntax bereitgestellt: < << <= = >= >> >. Die Operatoren < und >
    sind obsolet und sollten nicht verwandt werden, da ihre Semantik  verwirrend  ist.  Beispielsweise
    ergibt 0.1 < 0.1 wahr.
-?, --help
    Zeigt eine kurze Hilfenachricht an.
--force-help
    Gibt Hilfe zu den Optionen --force-Sache aus.
-Dh, --debug=help
    Gibt Hilfe zu Fehlersuchoptionen aus.
--version
    Zeigt dpkg Versionsinformationen an.
    Bei  der  Verwendung mit --robot wird die Ausgabe der Programmversionsnummer in einem numerischen,
    durch Punkte getrennten Format erfolgen, ohne Zeilenumbrüche.
dpkg-deb-Aktionen
    Lesen Sie dpkg-deb(1) für weitere Informationen über die folgenden Aktionen und  andere  Aktionen,
    die durch die Oberfläche dpkg nicht offengelegt werden.
    -b, --build Verzeichnis [Archiv|Verzeichnis]
        Baut ein deb-Paket.
    -c, --contents Archiv
        Listet den Inhalt eines deb-Pakets auf.
    -e, --control Archiv [Verzeichnis]
        Entpackt die Steuer-Informationen aus einem Paket.
    -x, --extract Archiv Verzeichnis
        Entpackt die in einem Paket enthaltenen Dateien.
    -X, --vextract Archiv Verzeichnis
        Entpackt die in einem Paket enthaltenen Dateinamen und zeigt sie an.
    -f, --field Archiv [Steuer-Feld…]
        Zeigt das oder die Steuerfeld(er) eines Pakets an.
    --ctrl-tarfile Archiv
        Gibt die in einem Debian-Paket enthaltene Steuer-Tar-Datei aus.
    --fsys-tarfile Archiv
        Gibt die in einem Debian-Paket enthaltene Dateisystem-Tar-Datei aus.
    -I, --info Archiv [Steuer-Datei…]
        Zeigt Informationen über ein Paket an.
dpkg-query-Aktionen
    Lesen Sie dpkg-query(1) für weitere Informationen über die folgenden Aktionen und andere Aktionen,
    die durch die Oberfläche dpkg nicht offengelegt werden.
    -l, --list Paketname-Muster…
        Listet Pakete auf, die auf ein gegebenes Muster passen.
    -s, --status Paketname…
        Berichtet den Status von festgelegten Paketen.
    -L, --listfiles Paketname …
        Listet Dateien auf, die auf Ihrem System durch Paketname installiert wurden.
    -S, --search Dateiname-Suchmuster …
        Sucht nach einem Dateinnamen aus installierten Paketen.
    -p, --print-avail Paketname…
        Zeigt  Details  über Paketname an, wie sie in /var/lib/dpkg/available enthalten sind. Benutzer
        von APT-basierten Oberflächen sollten stattdessen apt show Paketname verwenden.

OPTIONEN

Alle Optionen können auf der Befehlszeile, in  der  dpkg-Konfigurationsdatei  /etc/dpkg/dpkg.cfg  oder
Fragmentdateien  (mit  Namen,  die  auf  das  Shell-Muster  ‚[0-9a-zA-Z_-]*’ passen) in den Dateien im
Konfigurationsverzeichnis   /etc/dpkg/dpkg.cfg.d/   angegeben    werden.    Jede    Zeile    in    der
Konfigurationsdatei  ist entweder eine Option (exakt die gleiche wie die Befehlszeilenoption, nur ohne
führende Bindestriche) oder ein Kommentar (falls sie mit ‚#’ beginnt).
--abort-after=Zahl
    Ändert, nach wie vielen Fehlern dpkg abbrechen wird. Der Standardwert ist 50.
-B, --auto-deconfigure
    Wenn ein Paket entfernt wird, besteht die Möglichkeit, dass ein anderes  installiertes  Paket  von
    dem entfernten Paket abhängt. Die Angabe dieser Option führt zur automatischen Dekonfiguration des
    Paketes, das von dem entfernten Paket abhängt.
-Doctal, --debug=Oktal
    Schaltet Fehlersuche ein. Oktal wird durch bitweise Oder-Verknüpfung der gewünschten Werte aus der
    nachfolgenden   Liste   gebildet   (beachten   Sie,   dass   sich   diese   Werte  in  zukünftigen
    Veröffentlichungen verändern können). -Dh oder --debug=help zeigen diese Fehlersuchwerte an.
      Nummer  Beschreibung
          1   Allgemein hilfreiche Fortschrittsinformationen
          2   Aufruf und Status der Betreuerskripte
         10   Ausgabe für jede verarbeitete Datei
        100   Umfangreiche Ausgabe für jede verarbeitete Datei
         20   Ausgabe für jede Konfigurationsdatei
        200   Umfangreiche Ausgabe für jede Konfigurationsdatei
         40   Abhängigkeiten und Konflikte
        400   Umfangreiche Abhängigkeiten/Konflikte-Ausgabe
      10000   Trigger-Aktivierung und -Verarbeitung
      20000   Umfangreiche Ausgabe bezüglich Trigger
      40000   Alberne Menge an Ausgabe bezüglich Trigger
       1000   Umfangreiches Gelaber beispielsweise über das dpkg/info-Verzeichnis
       2000   Verrückte Mengen an Gelaber
--force-Sachen
--no-force-Sachen, --refuse-Sachen
    Erzwingt oder verweigert (no-force und refuse bedeuten das gleiche) bestimmte Sachen.  Sachen  ist
    eine  Kommata-getrennte  Liste  von  Dingen, die im Folgenden beschrieben sind. --force-help zeigt
    eine Meldung an, die diese beschreibt. Mit (*) markierte Dinge werden standardmäßig erzwungen.
    Warnung: Diese Optionen sind hauptsächlich für den Einsatz durch  Experten  gedacht.  Der  Einsatz
    ohne komplettes Verständnis der Auswirkungen kann Ihr gesamtes System zerstören.
    all:
      Schaltet alle „force“-Optionen ein (oder aus).
    downgrade(*):
      Installiert ein Paket, selbst wenn eine neuere Version davon bereits installiert ist.
      Warnung:  Derzeit  führt  dpkg  keine  Abhängigkeitsüberprüfung  bei  der  Installation  älterer
      Versionen (als bereits installiert) durch (sog. Downgrade) und  wird  Sie  daher  nicht  warnen,
      falls dadurch die Abhängigkeit eines anderen Pakets nicht mehr erfüllt ist. Dies kann ernsthafte
      Nebeneffekte  haben,  ein Downgrade einer essenziellen Systemkomponente kann Ihr gesamtes System
      unbrauchbar machen. Verwenden Sie diese Option mit Vorsicht.
    configure-any:
      Konfiguriert auch jedes entpackte, aber  unkonfigurierte  Paket,  von  dem  das  aktuelle  Paket
      abhängt.
    hold:
      Erlaubt  automatische Installationen, Upgrades und Entfernungen von Paketen, selbst wenn sie mit
      „halten“ markiert sind. Hinweis: Wenn diese  Aktionen  explizit  angefordert  werden,  wird  der
      Paketauswahlzustand „halten“ immer ignoriert.
    remove-reinstreq:
      Entfernt  ein  Paket, selbst falls es defekt ist und zur Neuinstallation markiert ist. Dies kann
      beispielsweise dazu führen, dass Teile des Pakets auf dem System bleiben und von dpkg  vergessen
      werden.
    remove-protected:
      Entfernt,  selbst  falls  das Paket als geschützt betrachtet wird (seit Dpkg 1.20.1). Geschützte
      Pakete enthalten hauptsächlich wichtige  Teile  der  Systemstartinfrastruktur  oder  werden  für
      angepasste  systemlokale  Metapakete  verwandt.  Diese  zu  entfernen kann dazu führen, dass das
      gesamte System nicht mehr starten oder benötigte Funktionalität  zu  Betrieb  verlieren  kann  -
      verwenden Sie diese Option daher mit Vorsicht.
    remove-essential:
      Entfernt,  selbst  falls  das Paket als essenziell betrachtet wird. Essenzielle Pakete enthalten
      hauptsächlich sehr grundlegende Unix-Befehle. Diese werden für das Paketierungssystem,  für  den
      Betrieb  des  Systems  im Allgemeinen oder während des Systemstarts benötigt (allerdings sollten
      Letztere stattdessen in geschützte Pakete umgewandelt werden).  Diese  zu  entfernen  kann  dazu
      führen,  dass  das  gesamte  System  nicht  mehr arbeitet - verwenden Sie diese Option daher mit
      Vorsicht.
    depends:
      Verwandelt alle Abhängigkeitsprobleme in Warnungen. Dies betrifft  die  Felder  Pre-Depends  und
      Depends.
    depends-version:
      Ignoriert Versionen bei der Prüfung von Abhängigkeiten. Dies betrifft die Felder Pre-Depends und
      Depends.
    breaks:
      Installiert,  selbst  falls  dies ein anderes Paket beschädigt (seit Dpkg 1.14.6). Dies betrifft
      das Feld Breaks.
    conflicts:
      Installiert, selbst wenn es mit einem anderen Paket in Konflikt steht. Dies ist  gefährlich,  da
      dies  gewöhnlich  dazu  führt,  dass einige Dateien überschrieben werden. Dies betrifft das Feld
      Conflicts.
    confmiss:
      Installiert die fehlende Conffile immer ohne Rückfrage. Dies ist  gefährlich,  da  es  bedeutet,
      dass eine Änderung (die Entfernung) an der Datei nicht erhalten wird.
    confnew:
      Falls eine Conffile modifiziert wurde und sich die Version im Paket geändert hat, wird immer die
      neue  Version  ohne Rückfrage installiert, es sei denn, --force-confdef ist ebenfalls angegeben,
      in welchem Falle die Standardaktion bevorzugt wird.
    confold:
      Falls eine Conffile modifiziert wurde und sich die Version im Paket geändert hat, wird immer die
      alte Version ohne Rückfrage behalten, es sei denn, --force-confdef ist ebenfalls  angegeben,  in
      welchem Falle die Standardaktion bevorzugt wird.
    confdef:
      Falls  eine  Conffile verändert wurde und sich die Version im Paket geändert hat, wird immer die
      Standardaktion ohne Rückfrage gewählt. Falls es keine Standardaktion gibt, wird  angehalten,  um
      den  Benutzer  zu  fragen,  es  sei  denn,  --force-confnew  oder --force-confold sind ebenfalls
      angegeben, in welchem Falle dies verwendet wird, um die letztendliche Aktion zu bestimmen.
    confask:
      Falls eine Conffile verändert wurde, wird immer angeboten, sie durch die Version aus  dem  Paket
      zu  ersetzen,  selbst falls sich die Version in dem Paket nicht geändert hat (seit Dpkg 1.15.8).
      Falls auch einer von --force-confnew, --force-confold oder --force-confdef angegeben wird,  wird
      sie dazu verwandt, die letztendliche Aktion zu ermitteln.
    overwrite:
      Überschreibt die Datei aus einem Paket mit einer Datei aus einem anderen Paket.
    overwrite-dir:
      Überschreibt das Verzeichnis aus einem Paket mit einer Datei aus einem anderen Paket.
    overwrite-diverted:
      Überschreibt eine umgeleitete („diverted“) Datei mit einer nicht umgeleiteten.
    statoverride-add:
      Überschreibt eine existierende Status-Hinwegsetzung beim Hinzufügen (seit Dpkg 1.19.5).
    statoverride-remove:
      Ignoriert eine fehlende Status-Hinwegsetzung beim Entfernen (seit Dpkg 1.19.5).
    security-mac(*):
      Verwendet  plattformspezifische  „Mandatory  Access Control (MAC)“-basierende Sicherheit bei der
      Installation von Dateien in das Dateisystem (seit Dpkg 1.19.5). Auf Linux-Systemen verwendet die
      Implementierung SELinux.
    unsafe-io:
      Führt beim Entpacken keine sicheren E/A-Aktionen durch (seit Dpkg 1.15.8.6). Derzeit  impliziert
      dies,  dass  vor  Dateiumbenennungen  kein  Systemsync  durchgeführt wird. Dieser Sync führt bei
      einigen Dateisystemen zu erheblichen  Leistungseinbußen,  unglücklicherweise  bei  solchen,  die
      überhaupt  sichere  E/A  aufgrund  ihres  unzuverlässigen  Verhaltens  benötigen,  auf denen bei
      abrupten Systemabstürzen Dateien der Länge Null entstehen können.
      Hinweis: Für den Hauptmissetäter Ext4 sollten  Sie  stattdessen  die  Einhängeoption  nodelalloc
      verwenden,   die  sowohl  die  Leistungseinbuße  verhindert  als  auch  Datensicherheitsprobleme
      vermeidet. Letzteres bedeutet, dass bei abrupten Systemabstürzen bei jeder Software,  die  keine
      Syncs vor atomaren Umbenennungen durchführt, keine Dateien der Länge Null generiert werden.
      Warnung:  Die  Verwendung dieser Option kann die Leistung erhöhen, allerdings können dabei Daten
      verloren gehen. Verwenden Sie die Option vorsichtig.
    script-chrootless:
      Führt Skripte aus, ohne per chroot(2) in das instdir zu wechseln, selbst falls das  Paket  diese
      Vorgehensweise nicht unterstützt (seit Dpkg 1.18.5).
      Warnung: Dies kann Ihr Wirtsystem beschädigen, passen Sie sehr gut auf!
    architecture:
      Verarbeitet sogar Pakete mit der falschen oder keiner Architektur.
    bad-version:
      Verarbeitet sogar Pakete mit falschen Versionen (seit Dpkg 1.16.1).
    bad-path:
      Im PATH fehlen wichtige Programme, daher sind Probleme wahrscheinlich.
    not-root:
      Versucht Sachen zu (de)installieren, selbst falls nicht root.
    bad-verify:
      Installiert ein Paket, selbst wenn die Authentizitätsprüfung fehlschlägt.
--ignore-depends=Paket, …
    Ignoriert  Abhängigkeitsüberprüfungen  für  bestimmte  Pakete  (tatsächlich  wird  die Überprüfung
    durchgeführt, aber nur Warnungen über Konflikte werden angezeigt, sonst nichts). Dies betrifft die
    Felder Pre-Depends, Depends und Breaks.
--no-act, --dry-run, --simulate
    Erledigt alles, was gemacht werden soll, aber schreibt keine Änderungen. Dies wird  verwendet,  um
    zu  sehen,  was  mit  der  spezifizierten  Änderung  passieren  würde,  ohne  tatsächlich etwas zu
    modifizieren.
    Stellen Sie sicher, dass --no-act vor dem Aktions-Parameter  steht,  andernfalls  könnte  dies  zu
    unerwünschten  Ergebnissen  führen (beispielsweise wird dpkg --purge foo --no-act zuerst das Paket
    „foo“ endgültig löschen und dann versuchen, das Paket „--no-act“ endgültig zu löschen, obwohl  Sie
    wahrscheinlich davon ausgingen, dass tatsächlich gar nichts passieren sollte).
-R, --recursive
    Behandelt  rekursiv  alle  regulären  Dateien,  die  auf  das Muster *.deb passen und im angegeben
    Verzeichnis sowie allen Unterverzeichnissen liegen. Dies kann mit den Aktionen -i, -A,  --install,
    --unpack und --record-avail verwendet werden.
-G  Installiert  ein  Paket  nicht, falls bereits eine neuere Version des gleichen Paketes installiert
    ist. Dies ist ein Alias für --refuse-downgrade.
--admindir=Verz
    Setzt das Standardadministrationsverzeichnis auf Verzeichnis.  Dieses  Verzeichnis  enthält  viele
    Dateien,  die  Informationen  über  den  Status von installierten und deinstallierten Paketen usw.
    enthalten. Standardmäßig „/var/lib/dpkg“, falls DPKG_ADMINDIR nicht gesetzt wurde.
--instdir=Verz
    Setzt  das  voreingestellte  Installationsverzeichnis.  Dieses  Verzeichnis  gibt  an,  wo  Pakete
    installiert  werden.  instdir  ist  auch  das  Verzeichnis,  das  an  chroot(2) vor dem Aufruf der
    Installationsskripte des Paketes übergeben wird, was bedeutet, dass die Skripte  instdir  als  ein
    Wurzelverzeichnis sehen. Standardmäßig „/“.
-root=Verz
    Setzt  das  Wurzelverzeichnis auf Verzeichnis, wodurch das Installationsverzeichnis auf „Verz“ und
    das administrative Verzeichnis auf „Verz/var/lib/dpkg“ gesetzt wird.
-O, --selected-only
    Bearbeitet nur die Pakete, die  zur  Installation  ausgewählt  sind.  Die  eigentliche  Markierung
    erfolgt  mit dselect oder durch dpkg, wenn es Pakete bearbeitet. Beispielsweise wird ein Paket bei
    der Entfernung als „zur Deinstallation ausgewählt“ markiert.
-E, --skip-same-version
    Installiert das Paket nicht,  falls  die  gleiche  Version  und  Architektur  des  Pakets  bereits
    installiert ist.
    Seit  Dpkg  1.21.10  wird auch die Architektur berücksichtigt. Dadurch ist es möglich, Pakete über
    cross zu aktualisieren oder zusätzliche ko-installierbare Instanzen mit der gleichen Version  aber
    einer anderen Architektur zu installieren.
--pre-invoke=Befehl
--post-invoke=Befehl
    Setzt  einen  Aufruf-Hook  Befehl, der via „sh -c“ vor oder nach dem dpkg-Aufruf der dpkg-Aktionen
    unpack, configure, install, triggers-only, remove und purge (seit Dpkg 1.15.4;) und Aktionen  add-
    architecture  Und  remove-architecture  (seit  Dpkg 1.17.19). Diese Option kann mehrfach angegeben
    werden. Die Reihenfolge der Optionen bleibt erhalten, wobei Einträge aus den Konfigurationsdateien
    Vorrang haben. Die  Umgebungsvariable  DPKG_HOOK_ACTION  wird  für  die  Hooks  auf  die  aktuelle
    dpkg-Aktion gesetzt.
    Die Aufruf-Hooks werden nicht ausgeführt, wenn --no-act angegeben ist oder als Benutzer, der nicht
    Root ist, ohne --force-not-root ausgeführt wird.
    Hinweis:  Oberflächen  könnten  dpkg mehrere Male pro Ausführung aufrufen, wodurch die Hooks öfter
    als erwartet ausgeführt werden könnten.
--path-exclude=Glob-Muster
--path-include=Glob-Muster
    Setzt Glob-Muster als Pfadfilter, entweder durch Ausschluss  oder  durch  Wiedereinschluss  vorher
    ausgeschlossener  Pfade,  die  während  der  Installation  auf  bestimmte Muster passen (seit Dpkg
    1.15.8).
    Warnung: Beachten Sie, dass abhängig von den  ausgeschlossenen  Pfaden  Sie  Ihr  System  komplett
    beschädigen könnten. Verwenden Sie dies daher vorsichtig.
    Das  Glob-Muster  kann  die  gleichen  Platzhalter  wie in der Shell verwenden, wobei ‚*’ auf eine
    beliebige  Folge  von  Zeichen,  auch  dem  Leerzeichen  und  ‚/’,  passt.  Beispielsweise   passt
    „/usr/*/READ*“  auf  „/usr/share/doc/package/README“.  Wie  gewöhnlich passt ‚?’ auf ein einzelnes
    Zeichen (wieder auch auf ‚/’). Und ‚[’ beginnt eine Zeichenklasse, die  eine  Liste  von  Zeichen,
    Bereiche und Komplemente enthalten kann. Lesen Sie glob(7) für detaillierte Informationen über das
    Globben. Hinweis: Die aktuelle Implementierung könnte mehr Verzeichnisse und symbolische Links als
    benötigt  wieder einschließen, insbesondere wenn es eine genauere Wiedereinschließung gibt. Um auf
    der sicheren Seite zu sein und in der Zukunft mögliche Entpackfehler  zu  vermeiden,  könnte  dies
    durch zukünftige Arbeiten behoben werden.
    Dies  kann  dazu  verwandt  werden,  alle  Pfade außer bestimmten zu entfernen, ein typischer Fall
    lautet:
     --path-exclude=/usr/share/doc/*
     --path-include=/usr/share/doc/*/copyright
    Hiermit werden alle Dokumentationsdateien (außer den Copyright-Dateien) entfernt.
    Diese zwei Optionen können mehrfach angegeben und miteinander verschachtelt werden.  Beide  werden
    in  der angegebenen Reihenfolge ausgewertet, wobei die letzte Regel, die auf eine Datei passt, die
    Entscheidung fällt.
    Die Filter werden beim Entpacken des Binärpakets angewandt und haben daher nur Wissen über den Typ
    des derzeit gefilterten Objekts (d.h. eine normale Datei oder ein  Verzeichnis)  und  sehen  daher
    nicht,  welche  Objekte  als  nächstes kommen. Da diese Filter Nebeneffekte haben (im Gegensatz zu
    find(1)-Filtern) wird das Ausschließen eines genauen Pfadnamens,  der  ein  Verzeichnisobjekt  wie
    /usr/share/doc  ist,  nicht  den gewünschten Effekt haben und nur der Pfadname wird ausgeschlossen
    (der automatisch wieder eingeschlossen werden könnte, falls der Code  eine  Notwendigkeit  hierfür
    sieht). Alle folgenden Dateien innerhalb des Verzeichnisses werden beim Entpacken fehlschlagen.
    Tipp: Stellen Sie sicher, dass die Metazeichen nicht durch Ihre Shell expandiert werden.
--verify-format=Formatname
    Setzt das Ausgabeformat für den Befehl --verify (seit Dpkg 1.17.2).
    Derzeit wird nur das Ausgabeformat rpm unterstützt. Es besteht aus einer Zeile für jeden Pfad, der
    bei der Prüfung fehlschlug. Diese Zeilen haben das folgende Format:
     missing   [c] Pfadname [(Fehlermeldung)]
     ?M5?????? [c] Pfadname
    Die  ersten  9  Zeichen  werden  zum  Berichten des Überprüfungsergebnisses verwandt, entweder ein
    wörtliches missing, wenn die Datei nicht vorhanden ist oder seine Metadaten nicht abgerufen werden
    können, oder eines der folgenden  besonderen  Zeichen,  das  das  Ergebnis  für  jede  Überprüfung
    berichtet:
    ‚?‘ Impliziert,    dass    die   Überprüfung   nicht   erfolgen   konnte   (Unterstützung   fehlt,
        Dateiberechtigungen usw.)
    ‚.‘ Impliziert, dass die Überprüfung erfolgreich war.
    ‚A-Za-z0-9‘
        Impliziert,  dass  eine  bestimmte  Prüfung   fehlschlug.   Die   folgenden   Positionen   und
        alphanumerischen Zeichen werden derzeit unterstützt:
        1 ‚?‘
            Diese Überprüfungen werden derzeit nicht unterstützt, sie werden immer ‚?‘ sein.
        2 ‚M‘
            Die  Dateimodusüberprüfung  schlug fehl (seit Dpkg 1.21.0). Da Pfadnamen-Metadaten derzeit
            nicht nachverfolgt werden, kann  diese  Überprüfung  nur  teilweise  mit  einer  einfachen
            Heuristik  für  Pfadnamen  emuliert  werden,  die über einen bekannten Hash verfügen. Dies
            impliziert, dass sie reguläre Dateien sind, bei denen die Überprüfung  fehlschlägt,  falls
            der  Pfadname  keine  reguläre  Datei  im  Dateisystem ist. Diese Überprüfung wird derzeit
            niemals erfolgreich sein, da sie nicht über genug Informationen verfügt.
        3 ‚5‘
            Die Hash-Überprüfung schlug fehl. Das bedeutet, dass sich der  Dateiinhalt  geändert  hat.
            Dies   ist  nur  eine  Integritätsprüfung  und  sollte  nicht  als  irgend  eine  Art  von
            Sicherheitsüberpüfung angesehen werden.
        4-9 ‚?‘
            Diese Überprüfungen werden derzeit nicht unterstützt, sie werden immer ‚?‘ sein.
    Dieser Zeile folgt ein Leerzeichen und ein Attributszeichen. Das  folgende  Attributszeichen  wird
    unterstützt:
    ‚c‘ Der Pfadname ist ein Conffile.
    Schließlich folgt ein weiteres Leerzeichen und der Pfadname.
    Falls  der Eintrag vom Typ missing und die Datei nicht wirklich auf dem Dateisystem vorhanden war,
    dann folgt der Zeile ein Leerzeichen und die in Klammern eingeschlossene Fehlermeldung.
--status-fd n
    Schickt maschinenlesbare Paketstatus- und  Fortschrittsinformationen  an  den  Dateideskriptor  n.
    Diese  Option  kann  mehrfach  angegeben  werden. Die Information besteht typischerweise aus einem
    Datensatz pro Zeile in folgendem Format:
    status: Paket: Status
        Paketstatus geändert; Status entsprechend der Statusdatei.
    status: Paket : error : ausführliche-Fehlermeldung
        Ein Fehler ist aufgetreten. Alle möglichen Zeilenumbrüche in ausführliche-Fehlermeldung werden
        vor der Ausgabe in Leerzeichen gewandelt.
    status: Datei : conffile-prompt : „echt-alt“ „echt-neu“ benutzer-edit dist-edit
        Dem Benutzer wird eine Conffile-Frage gestellt.
    processing: Stufe: Paket
        Wird genau bevor eine Verarbeitungsstufe beginnt  versandt.  Stufe  ist  eine  der  folgenden:
        upgrade,  install  (beide  werden vor dem Entpacken versandt), configure, trigproc, disappear,
        remove, purge.
--status-logger=Befehl
    Schickt maschinenlesbare Paketstatus- und Fortschrittsinformationen  an  die  Standardeingabe  des
    Befehls  der  Shell, was dann mittels „DPKG_DEFAULT_SHELL% -c“ ausgeführt wird (seit Dpkg 1.16.0).
    Diese Option kann mehrfach angegeben werden. Das verwandte Ausgabeformat ist identisch zu  dem  in
    --status-fd.
    Die  Statusprotokollierer  werden nicht ausgeführt, wenn --no-act angegeben ist oder als Benutzer,
    der nicht Root ist, ohne --force-not-root ausgeführt wird.
--log=Dateiname
    Protokolliert  Statusänderungen  und  -aktionen  in  Dateiname  statt   in   das   standardmäßigen
    /var/log/dpkg.log.  Falls diese Option mehrfach angegeben ist, wird der letzte Dateiname verwandt.
    Protokollnachrichten haben die Form:
    YYYY-MM-DD HH:MM:SS startup Typ Befehl
        Für jeden Dpkg-Aufruf, wobei Typ entweder archives (mit einem Befehl unpack oder install) oder
        packages (mit einem Befehl configure, triggers-only, remove oder purge) ist.
    YYYY-MM-DD HH:MM:SS status Zustand Pkt installierte_Version
        Für Statusaktualisierungen.
    YYYY-MM-DD HH:MM:SS Aktion Pkt installierte_Version verfügbar_Version
        Für Aktionen, wobei Aktion eine aus install, upgrade, configure, trigproc,  disappear,  remove
        oder purge ist.
    YYYY-MM-DD HH:MM:SS conffile Dateiname Entscheidung
        Für Conffile-Änderungen, wobei Entscheidung entweder install oder keep ist.
--robot
    Verwendet ein maschinenlesbares Ausgabeformat. Dies stellt die Schnittstelle für Programme bereit,
    die  die  Ausgabe  einiger  Befehle  auswerten  müssen,  die  keine  anderweitig maschinenlesbaren
    Ausgabeformate bereitstellen. Es erfolgt keine Lokalisierung und die Ausgabe wird verändert, damit
    sie leichter auszuwerten ist.
    Der einzige derzeit unterstützte Befehl ist --version.
--no-pager
    Deaktiviert die Verwendung jeglichen Pagers bei der Anzeige von Informationen (seit Dpkg 1.19.2).
--no-debsig
    Versucht nicht, Paketsignaturen zu überprüfen.
--no-triggers
    Führt keine Trigger in diesem Durchlauf aus (seit Dpkg 1.14.17). Aktivierungen werden aber dennoch
    aufgezeichnet. Falls dies mit --configure Paket oder --triggers-only Paket verwandt wird, wird das
    Postinst des benannten Pakets dennoch ausgeführt, selbst falls nur ein Trigger-Lauf notwendig ist.
    Die Verwendung dieser Option  kann  Pakete  in  die  unzulässigen  Zustände  triggers-awaited  und
    triggers-pending  bringen.  Durch die Ausführung von „dpkg --configure --pending“ kann dies später
    behoben werden.
--triggers
    Annulliert ein vorheriges --no-triggers (seit Dpkg 1.14.17).

RÜCKGABEWERT

0   Die angeforderte Aktion wurde erfolgreich ausgeführt. Oder ein Prüfausdruck oder eine  Zusicherung
    (Assertion) lieferte Wahr zurück.
1   Ein Prüfausdruck oder eine Zusicherung lieferte Falsch zurück.
2   Fataler   oder  nicht  behebbarer  Fehler  aufgrund  eines  ungültigen  Befehlszeilenaufrufs  oder
    Interaktionen mit dem System, wie Zugriffe auf die Datenbank, Speicherzuweisungen usw.

UMGEBUNG

Externe Umgebung

PATH
    Es wird erwartet, dass diese Variable in der Umgebung gesetzt ist und auf die  Systempfade  zeigt,
    in  denen eine Reihe von benötigten Programmen gefunden werden können. Falls sie nicht gesetzt ist
    oder die Programme nicht gefunden werden können, wird dpkg die Bearbeitung abbrechen.
HOME
    Falls gesetzt, wird dpkg sie als  das  Verzeichnis  verwenden,  aus  dem  die  benutzerspezifische
    Konfigurationsdatei gelesen wird.
TMPDIR
    Falls  gesetzt,  wird  dpkg  sie  als  das  Verzeichnis  verwenden,  in  dem temporäre Dateien und
    Verzeichnisse erstellt werden.
SHELL
    Das Programm, das dpkg ausführen wird, wenn es eine neue  interaktive  Shell  startet  oder  einen
    Befehl über eine Shell ausführt.
PAGER
DPKG_PAGER
    Das   Programm,  das  dpkg  ausführen  wird,  wenn  es  einen  Pager  mit  „$SHELL  -c“  ausführt,
    beispielsweise zur Anzeige von Conffile-Dateiunterschieden. Falls SHELL nicht  gesetzt  ist,  wird
    stattdessen  „sh“  verwandt.  DPKG_PAGER  setzt die Umgebungsvariable PAGER außer Kraft (seit Dpkg
    1.19.2).
DPKG_COLORS
    Setzt den Farbmodus (seit Dpkg 1.18.5). Die derzeit  unterstützten  Werte  sind:  auto  (Vorgabe),
    always und never.
DPKG_NLS
    Falls  dies  gesetzt  ist,  wird  es  zur  Entscheidung,  ob  Native  Language  Support,  auch als
    Unterstützung für Internationalisierung (oder i18n) bekannt, aktiviert wird  (seit  Dpkg  1.22.7).
    Die akzeptierten Werte sind: 0 und 1 (Vorgabe).
DPKG_DEBUG
    Setzt  die  Fehlersuchmaske  (seit  Dpkg 1.21.10) aus einem oktalen Wert. Die aktuell akzeptierten
    Schalter werden in der Option --debug beschrieben.
DPKG_FORCE
    Setzt die Erzwingungsschalter (seit Dpkg 1.19.5). Wenn diese Variable vorhanden ist, werden  keine
    eingebauten  Vorgaben  für  Erzwingungen angewandt. Falls diese Variable vorhanden, aber leer ist,
    werden alle Erzwingungsschalter deaktiviert.
DPKG_ADMINDIR
    Falls gesetzt und  die  Option  --admindir  oder  --root  nicht  verwandt  wurde,  wird  dies  als
    administratives Verzeichnis von dpkg verwandt (seit Dpkg 1.20.0).
DPKG_FRONTEND_LOCKED
    Wird von einer Paketverwalterprogrammoberfläche gesetzt, um Dpkg zu informieren, dass es nicht die
    Sperre der Oberfläche erlangen soll (seit Dpkg 1.19.1).

Interne Umgebung

LESS
    Von dpkg auf „-FRSXMQ“ definiert, falls es nicht bereits gesetzt ist oder wenn ein Pager gestartet
    wird  (seit  Dpkg  1.19.2).  Um  das  Vorgabeverhalten zu verändern, kann diese Variable auf einen
    anderen Wert einschließlich der leeren Zeichenkette voreingestellt werden oder die Variablen PAGER
    oder  DPKG_PAGER  können  gesetzt  werden,  um  bestimmte  Optionen  mit  „-+“  zu   deaktivieren,
    beispielsweise DPKG_PAGER="less -+F".
DPKG_ROOT
    Durch  dpkg  in  der  Betreuerskriptumgebung  definiert,  um  anzuzeigen,  auf welche Installation
    gehandelt werden soll (seit Dpkg 1.18.5). Der  Wert  soll  jedem  Pfad,  auf  den  Betreuerskripte
    agieren,  vorangestellt  werden.  Während  des  Normalbetriebs  ist  diese  Variable leer. Bei der
    Installation von Paketen in ein anderes instdir wird dpkg  normalerweise  Betreuerskripte  mittels
    chroot(2)  aufrufen und diese Variable leer lassen. Falls aber --force-script-chrootless angegeben
    ist, wird dieser chroot(2)-Aufruf übersprungen und instdir ist nicht leer.
DPKG_ADMINDIR
    Wird von dpkg für die Betreuer-Skript-Umgebung  gesetzt,  um  das  zu  verwendende  administrative
    Verzeichnis  von  dpkg  anzuzeigen (seit Dpkg 1.16.0). Diese Variable wird immer auf den aktuellen
    Wert von --admindir gesetzt.
DPKG_FORCE
    Wird   von   dpkg   für    alle    Unterprozessumgebungen    auf    alle    aktuell    aktivierten
    Erzwingungsoptionennamen (getrennt durch Kommata) gesetzt (seit Dpkg 1.19.5).
DPKG_SHELL_REASON
    Wird  von  dpkg  auf  der  Shell,  die von der Conffile-Eingabeaufforderung gestartet wird, um die
    Situation zu analysieren, gesetzt (seit Dpkg 1.15.6). Derzeit gültiger Wert: conffile-prompt.
DPKG_CONFFILE_OLD
    Wird von dpkg auf der Shell, die von  der  Conffile-Eingabeaufforderung  gestartet  wird,  um  die
    Situation zu analysieren, gesetzt (seit Dpkg 1.15.6). Enthält den Pfad zu der alten Conffile.
DPKG_CONFFILE_NEW
    Wird  von  dpkg  auf  der  Shell,  die von der Conffile-Eingabeaufforderung gestartet wird, um die
    Situation zu analysieren, gesetzt (seit Dpkg 1.15.6). Enthält den Pfad zu der neuen Conffile.
DPKG_HOOK_ACTION
    Wird von dpkg auf der Shell, die beim Ausführen von Hook-Aktionen gestartet  wird,  gesetzt  (seit
    Dpkg 1.15.4). Enthält die aktuelle dpkg-Aktion.
DPKG_RUNNING_VERSION
    Wird  von  dpkg für die Betreuer-Skript-Umgebung auf die Version der aktuell laufenden Instanz von
    dpkg gesetzt (seit Dpkg 1.14.17).
DPKG_MAINTSCRIPT_PACKAGE
    Wird  von  dpkg  für  die  Betreuer-Skript-Umgebung  auf  den  in   Arbeit   befindlichen   (nicht
    architekturspezifizierte) Paketnamen gesetzt (seit Dpkg 1.14.17).
DPKG_MAINTSCRIPT_PACKAGE_REFCOUNT
    Wird  von dpkg für die Betreuer-Skript-Umgebung auf die Paketreferenzzahl gesetzt, d.h. die Anzahl
    der Paketinstanzen mit einem Status größer als not-installed (seit Dpkg 1.17.2).
DPKG_MAINTSCRIPT_ARCH
    Wird von dpkg für die Betreuer-Skript-Umgebung auf die Architektur  gesetzt,  für  die  das  Paket
    gebaut wurde (seit Dpkg 1.15.4).
DPKG_MAINTSCRIPT_NAME
    Wird  von  dpkg  für  die  Betreuer-Skript-Umgebung auf den Namen des laufenden Skripts definiert,
    eines von preinst, postinst, prerm oder postrm (seit Dpkg 1.15.7).
DPKG_MAINTSCRIPT_DEBUG
    Wird von dpkg für die Betreuer-Skript-Umgebung auf einen Wert (‚0’ oder ‚1’) gesetzt, der  angibt,
    ob  die  Fehlersuche (mit der Option --debug) für die Betreuerskripte angefordert wurde (seit Dpkg
    1.18.4).

DATEIEN

/etc/dpkg/dpkg.cfg.d/[0-9a-zA-Z_-]*
    Konfigurationsfragmentdateien (seit Dpkg 1.15.4).
/etc/dpkg/dpkg.cfg
    Konfigurationsdatei mit Standardeinstellungen der Optionen.
/var/log/dpkg.log
    Standard-Protokolldatei (lesen Sie /etc/dpkg/dpkg.cfg und die Option --log).
Die anderen, nachfolgend aufgeführten Dateien sind in ihren Standardverzeichnissen, lesen Sie den Text
zur Option --admindir, um zu sehen, wie Sie den Ort dieser Dateien ändern können.
/var/lib/dpkg/available
    Liste der verfügbaren Pakete.
/var/lib/dpkg/status
    Status der verfügbaren Pakete. Diese  Datei  enthält  Informationen  darüber,  ob  ein  Paket  zur
    Entfernung  markiert ist oder nicht, ob es installiert ist oder nicht usw. Lesen Sie den Abschnitt
    "INFORMATIONEN ÜBER PAKETE" für weitere Informationen.
    Die Statusdatei wird täglich nach /var/backups gesichert. Dies  kann  hilfreich  sein,  falls  sie
    aufgrund von Problemen mit dem Dateisystem verloren gegangen oder beschädigt worden ist.
Das Format und die Inhalte eines Binärpakets sind in deb(5) beschrieben.

Dateisystem-Dateinamen

Während  des  Entpackens  und  Konfigurierens  verwendet  dpkg  verschiedene Dateinamen zum Zwecke der
Sicherung und zum Zurücksetzen. Es folgt eine vereinfachte Erklärung wie diese Dateinamen während  der
Paketinstallation verwandt werden.
*.dpkg-new
    Während  des  Entpackens  extrahiert  dpkg  Dateisystemobjekte  in  Pfadnamen.dpkg-new  (außer für
    bestehende Verzeichnisse oder Symlinks auf Verzeichnisse, die übersprungen  werden).  Sobald  dies
    erledigt ist und nachdem Sicherungskopien der alten Objekte erstellt wurden, werden die Objekte in
    Pfadnamen umbenannt.
*.dpkg-tmp
    Während  des  Entpackens  legt dpkg Sicherungskopien alter Dateisystemobjekte in Pfadname.dpkg-tmp
    nach  dem  Extrahieren  der  neuen  Objekte  an.  Diese  Sicherungskopien  werden  entweder  durch
    Umbenennung für Verzeichnisse (aber nur wenn diese den Dateityp ändern), einer neuen Symlink-Kopie
    für  Symlinks  oder harte Links für alle anderen Dateisystemobjekte angelegt, außer für Conffiles,
    von denen keine Sicherungskopie angelegt wird, da sie in einer späteren Stufe verarbeitet werden.
    Falls zurückgesetzt werden muss, werden  diese  Sicherungskopien  dazu  verwandt,  die  vorherigen
    Inhalte  der  Objekte wiederherzustellen. Diese werden nach Abschluss der Installation automatisch
    entfernt.
*.dpkg-old
    Während  der  Konfiguration,  bei  der  Installation  einer  neuen   Version,   kann   dpkg   eine
    Sicherungskopie der vorherigen geänderten Conffile in Pfadname.dpkg-old anlegen.
*.dpkg-dist
    Während  der Konfiguration, beim Beibehalten der alten Version, kann dpkg eine Sicherungskopie der
    neuen unveränderten Conffile in Pfadname.dpkg-dist anlegen.

SICHERHEIT

Alle Aktionen, die Schreibzugriff auf  die  Datenbank  oder  das  Dateisystem  benötigen,  werden  als
privilegierte  Aktionen angesehen, die eine Eskalation zu Root erlauben könnten. Diese Aktionen dürfen
niemals an nicht vertrauenswürdige  Benutzer  delegiert  oder  durch  nicht  vertrauenswürdige  Pakete
durchgeführt werden, da dies Root-Zugriff auf Ihr System ermöglichen könnte.
Einige  Aktionen  (wie  das  Überprüfen von Paketen) könnten Root-Privilegien benötigen, damit sie auf
Dateien im  Dateisystem  zugreifen  können,  die  ansonsten  aufgrund  eingeschränkter  Berechtigungen
unzugreifbar  wären.  Abgesehen  davon sollten sie normal funktionieren und in diesen Fällen geeignete
Meldungen anzeigen.
Abfrageaktionen  sollten  niemals  Root  benötigen  und   die   Übertragung   ihrer   Ausführung   auf
nichtprivilegierte  Benutzer  mittels eines Werde-Root-Befehls kann Sicherheitsauswirkungen haben (wie
eine  Privilegieneskalation),  beispielsweise  wenn  ein  Seitenanzeigeprogramm  von  einem   Werkzeug
automatisch aufgerufen wird.
Siehe auch den Abschnitt SICHERHEIT der Handbuchseiten dpkg-deb(1) und dpkg-split(1).

FEHLER

--no-act gibt gewöhnlich weniger Informationen, als hilfreich sein könnten.

BEISPIELE

Um  die  installierten  Pakete  mit  Bezug zum Editor vi(1) aufzulisten (beachten Sie, dass dpkg-query
nicht mehr standardmäßig die  Datei  available  lädt  und  stattdessen  dafür  die  Option  dpkg-query
--load-avail verwandt werden sollte):
 dpkg -l '*vi*'
Um die Einträge von zwei Paketen in /var/lib/dpkg/available zu sehen:
 dpkg --print-avail vim neovim | less
Wenn Sie die Liste der Pakete selbst durchsuchen wollen:
 dpkg --print-avail | less
Um ein installiertes Neovim-Paket zu entfernen:
 dpkg -r neovim
Um  ein  Paket  zu  installieren,  müssen Sie es erst in einem Archiv oder auf einem physischen Medium
finden.  Wenn  Sie  ein  auf  einer  Pool-Struktur  basierendes  Archiv  verwenden,  reicht  es,   den
Archivbereich und den Paketnamen zu kennen, um den Pfadnamen abzuleiten:
 dpkg -i /media/bdrom/pool/main/v/vim/vim_9.0.2018-1_amd64.deb
Um eine lokale Kopie der Paketauswahl-Zustände zu erstellen:
 dpkg --get-selections >meine_auswahl
Sie könnten diese Datei auf einen anderen Rechner übertragen und dann die Datei available dort mit dem
Paketverwalter  Ihrer  Wahl (siehe <https://wiki.debian.org/Teams/Dpkg/FAQ#set-selections> für weitere
Details) aktualisieren, zum Beispiel:
 apt-cache dumpavail | dpkg --merge-avail
Sie können sie dann wie folgt installieren:
 dpkg --clear-selections
 dpkg --set-selections <meine_auswahl
Beachten  Sie,  dass  dies  nichts  wirklich  installiert  oder  entfernt,   sondern   lediglich   den
Auswahlzustand  der  angeforderten  Pakete  setzt.  Sie werden eine andere Anwendung benötigen, um die
angeforderten Pakete tatsächlich herunterzuladen und zu installieren. Führen Sie  beispielsweise  apt-
get dselect-upgrade aus.
Gewöhnlich  werden Sie feststellen, dass dselect(1) eine bequemere Art ist, den Paketauswahlzustand zu
ändern.

ZUSÄTZLICHE FUNKTIONALITÄT

Zusätzliche Funktionalität kann durch die Installation jedes der  folgenden  Pakete  erhalten  werden:
apt, aptitude und debsig-verify.

SIEHE AUCH

  1. aptitude(8)
  2. apt(8)
  3. dselect(1)
  4. dpkg-deb(1)
  5. dpkg-query(1)
  6. deb(5)
  7. deb-control(5)
  8. dpkg.cfg(5
  9. dpkg-reconfigure(8)

1.22.11 2024-08-01 dpkg(1)