dpkg-divert

Section: dpkg suite (1)
Updated: 1970-01-01
Page Index
 

BEZEICHNUNG

dpkg-divert - Über die Paketversion einer Datei hinwegsetzen  

ÜBERSICHT

dpkg-divert [Option …] Befehl  

BESCHREIBUNG

dpkg-divert ist ein Hilfswerkzeug, um die Liste der Umleitungen einzurichten und zu aktualisieren.

Datei-Diversionen (Umleitungen) sind eine Möglichkeit, dpkg(1) dazu zu zwingen, eine Datei nicht an ihren Standardplatz, sondern an einem umgeleiteten Ort zu installieren. Umleitungen können innerhalb der Debian-Paketskripte verwendet werden, um eine Datei beiseitezuschieben, wenn sie einen Konflikt auslöst. Systemadministratoren können sie auch verwenden, um sich über die Konfigurationsdateien einiger Pakete hinwegzusetzen, oder wann immer einige Dateien (die nicht als BqConffiles" markiert sind) von dpkg erhalten werden müssen, wenn eine neuere Version eines Paketes, die diese Dateien enthält, installiert wird.  

BEFEHLE

[--add] Datei
Fügt eine Umleitung für Datei hinzu. Die Datei wird derzeit nicht umbenannt, siehe --rename.
--remove Datei
Entfernt eine Umleitung für Datei. Die Datei wird derzeit nicht umbenannt, siehe --rename.
--list Glob-Muster
Listet Umleitungen auf, die auf Glob-Muster passen.
--listpackage Datei
Gibt den Namen des Pakets aus, welches die Datei umleitet (seit Dpkg 1.15.0). Gibt LOCAL aus, falls die Datei lokal umgeleitet wurde und nichts, falls Datei nicht umgeleitet wurde.
--truename Datei
Zeigt den echten Namen für eine umgeleitete Datei an.
 

OPTIONEN

--admindir Verzeichnis
Setzt das administrative Verzeichnis auf Verzeichnis (Standard: Bq/var/lib/dpkg").
--instdir Verzeichnis
Setzt das Installationsverzeichnis, das sich auf das Verzeichnis bezieht, in dem Pakete installiert werden (seit Dpkg 1.19.2). Standardmäßig Bq/".
--root Verzeichnis
Setzt das Wurzelverzeichnis auf Verzeichnis, wodurch das Installationsverzeichnis auf BqVerzeichnis" und das administrative Verzeichnis auf BqVerzeichnis/var/lib/dpkg" gesetzt wird (seit Dpkg 1.19.2).
--divert Umleitziel
Umleitziel ist der Zielort, wohin die Versionen der Datei, wie sie von anderen Paketen bereitgestellt wird, umgeleitet werden.
--local
Gibt an, dass alle Versionen dieser Datei umgeleitet sind. Dies bedeutet, dass es keine Ausnahmen gibt, und egal was für ein Paket auch installiert ist, die Datei ist umgeleitet. Dies kann vom Administrator verwendet werden, um eine lokal geänderte Version zu installieren.
--package Paket
Paket ist der Name des Pakets, dessen Kopie von Datei nicht umgeleitet wird, d.h. Datei wird für alle Pakete außer Paket umgeleitet.
--quiet
Stiller Modus, d.h. keine ausführliche Ausgabe.
--rename
Schiebt die Dateien tatsächlich beiseite (oder zurück). dpkg-divert wird den Arbeitsvorgang abbrechen, falls die Zieldatei bereits existiert. Dies ist das typische Verhalten, das für Umleitungen von Dateien aus der Gruppe der nicht-Essential-Pakete verwandt wird (siehe --no-rename für weitere Details).
--no-rename
Legt fest, dass die Datei beim Hinzufügen oder Entfernen der Umleitung in die Datenbank nicht umbenannt werden soll (seit Dpkg 1.19.1). Dies ist für Umleitungen von Dateien aus der Paketgruppe Essential gedacht, bei der das vorübergehende Verschwinden der ursprünglichen Datei nicht akzeptiert werden kann, da es zu einem nicht funktionalen System führen kann. Dies ist das Standardverhalten, was sich allerdings im Dpkg 1.20.x-Zyklus ändern wird.
--test
Testmodus, d.h. führt keine Änderungen durch, sondern zeigt sie lediglich.
-?, --help
Zeigt einen Hinweis zum Aufruf und beendet das Programm.
--version
Gibt die Version aus und beendet das Programm.
 

RÜCKGABEWERT

0
Die angeforderte Aktion wurde erfolgreich ausgeführt.
2
Fataler oder nicht behebbarer Fehler aufgrund eines ungültigen Befehlszeilenaufrufs oder Interaktionen mit dem System, wie Zugriffe auf die Datenbank, Speicherzuweisungen usw.
 

UMGEBUNG

DPKG_ROOT
Falls gesetzt und die Option --instdir oder --root nicht angegeben wurde, wird dies als Dateisystemwurzelverzeichnis verwandt (seit Dpkg 1.19.2).
DPKG_ADMINDIR
Falls gesetzt und die Option --admindir oder --root nicht verwandt wurde, wird dies als Datenverzeichnis von dpkg verwandt.
DPKG_MAINTSCRIPT_PACKAGE
Falls gesetzt und die Optionen --local und --package nicht verwandt wurden, wird dpkg-divert dies als Paketnamen verwenden.
DPKG_COLORS
Setzt den Farbmodus (seit Dpkg 1.18.5). Die derzeit unterstützten Werte sind: auto (Vorgabe), always und never.
 

DATEIEN

/var/lib/dpkg/diversions
Datei, die die aktuelle Liste von Umleitungen des Systems enthält. Sie befindet sich im dpkg-Administrationsverzeichnis, zusammen mit anderen für dpkg wichtigen Dateien, wie status oder available.

Hinweis: dpkg-divert erhält die alte Kopie dieser Datei, mit der Endung -old, bevor es sie durch die neue ersetzt.

 

BEMERKUNGEN

Beim Hinzufügen ist die Standardeinstellung --local und --divert Originalname.distrib. Beim Entfernen müssen, falls angegeben, --package oder --local und --divert übereinstimmen.

Verzeichnisse können mit dpkg-divert nicht umgeleitet werden.

Vorsicht sollte beim Umleiten von Laufzeit-Bibliotheken walten gelassen werden, da ldconfig(8) einen symbolischen Link, basierend auf dem in der Bibliothek eingebetteten DT_SONAME-Feld, anlegt. Da ldconfig keine Umleitungen anerkennt (nur dpkg tut dies), kann der Symlink am Ende auf die umgeleitete Bibliothek zeigen, falls die umgeleitete Bibliothek den gleichen SONAME wie die nicht umgeleitete hat.  

BEISPIELE

Um alle Kopien von /usr/bin/example auf /usr/bin/example.foo umzuleiten, d.h. alle Pakete, die /usr/bin/example zur Verfügung stellen, dazu anzuleiten, diese Datei stattdessen als /usr/bin/example.foo zu installieren und die Umbenennung, falls notwendig, durchzuführen:

 dpkg-divert --divert /usr/bin/example.foo --rename /usr/bin/example

Um diese Umleitung zu entfernen:

 dpkg-divert --rename --remove /usr/bin/example

Um für jedes Paket - außer Ihrem eigenen wibble-Paket -, das versucht, /usr/bin/example zu installieren, dieses auf /usr/bin/example.foo umzuleiten:

 dpkg-divert --package wibble --divert /usr/bin/example.foo \
    --rename /usr/bin/example

Um diese Umleitung zu entfernen:

 dpkg-divert --package wibble --rename --remove /usr/bin/example

 

SIEHE AUCH

dpkg(1).  

ÜBERSETZUNG

Die deutsche Übersetzung wurde 2004, 2006-2020 von Helge Kreutzmann <debian@helgefjell.de>, 2007 von Florian Rehnisch <eixman@gmx.de> und 2008 von Sven Joachim <svenjoac@gmx.de> angefertigt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 2 oder neuer für die Kopierbedingungen. Es gibt KEINE HAFTUNG.


 

Index

BEZEICHNUNG
ÜBERSICHT
BESCHREIBUNG
BEFEHLE
OPTIONEN
RÜCKGABEWERT
UMGEBUNG
DATEIEN
BEMERKUNGEN
BEISPIELE
SIEHE AUCH
ÜBERSETZUNG