BEZEICHNUNG
hwdb - Hardware-Datenbank
BESCHREIBUNG
Die Hardwaredatenbank ist ein Schlüssel-Wert-Speicher zur Zuordnung Modalias-artiger Schlüssel zu Udev-Eigenschaften-artigen Werten. Sie wird primär durch Udev zum Hinzufügen der relevanten Eigenschaften auf passende Geräte verwandt, kann aber auch direkt abgefragt werden.
HARDWARE-DATENBANKDATEIEN
Die hwdb-Dateien werden aus den im System-hwdb-Verzeichnis und dem lokalen Administrationsverzeichnis /lib/udev/hwdb.d befindlichen Dateien gelesen. Alle hwdb-Dateien werden gemeinsam sortiert und in lexikalischer Reihenfolge, unabhängig von dem Verzeichnis, aus dem sie stammen, verarbeitet. Allerdings ersetzen Dateien mit gleichen Dateinamen einander. Dateien in /etc haben die höchste Priorität und haben Vorrang vor Dateien mit dem gleichen Namen in /lib. Dies kann bei Bedarf zum Außerkraftsetzen einer vom System bereitgestellten hwdb-Datei verwandt werden, ein auf /dev/null zeigender Symlink in /etc mit dem gleichen Namen wie eine hwdb-Datei in /lib deaktiviert diese hwdb-Datei komplett. hwdb-Dateien müssen die Endung .hwdb haben, andere Endungen werden ignoriert.
Jede hwdb-Datei enthält Datensätze, die aus Treffern und zugeordneten Schlüssel-Wert-Paaren bestehen. Jeder Datensatz in der hwdb beginnt mit einem oder mehreren Trefferzeichenketten, die ein Shell-Glob festlegen, mit dem die Nachschlagezeichenkette verglichen wird. Mehrere Trefferzeilen werden in fortlaufenden Zeilen festgelegt. Jede Trefferzeile wird individuell verglichen und alle werden durch ODER verknüpft. Jede Trefferzeile muss am ersten Zeichen der Zeile beginnen.
Den Trefferzeilen folgt eine oder mehrere Schlüssel-Wert-Paar-Zeilen, die durch das einleitende Leerzeichen erkannt werden. Der Schlüsselname und der Wert werden durch »=« getrennt. Eine leere Zeile kennzeichnet das Ende des Datensatzes. Mit »#« beginnende Zeilen werden ignoriert.
Falls mehrere Datensätze auf eine Nachschlagezeichenkette passen, werden die Schlüssel-Wert-Paare aller Datensätze zusammengefasst. Falls ein Schlüssel mehrfach festgelegt ist, wird der Wert vom Datensatz mit der höchsten Priorität verwandt (jeder Schlüssel kann nur einen einzelnen Wert haben). Die Priorität ist höher, wenn der Datensatz in einer Datei ist, die lexikographisch später einsortiert ist. Im Falle von Datensätzen in der gleichen Datei haben Datensätze weiter hinten höhere Priorität.
Der Inhalt aller hwdb-Dateien wird durch systemd-hwdb(8) eingelesen und in eine unter /etc/udev/hwdb.bin (oder alternativ in /lib/udev/hwdb.bin, falls Sie eine zusammengestellte Datenbank in einem unveränderlichen Abbild ausliefern wollen) befindliche binäre Datenbank übersetzt.
BEISPIELE
Beispiel 1. Allgemeine Syntax von hwdb-Dateien
#
/lib/udev/hwdb.d/example.hwdb
# Vor jeden Datensatz können Kommentare abgelegt
werden. Dies ist
# eine gute Stelle zu beschreiben, wofür die Datei
verwandt wird, welche
# Arten von Eigenschaften sie definiert und die
Sortierkonvention.
# Ein Datensatz
mit drei Vergleichen und einer Eigenschaft
mouse:*:name:*Trackball*:
mouse:*:name:*trackball*:
mouse:*:name:*TrackBall*:
ID_INPUT_TRACKBALL=1
# Ein Datensatz
mit einem einzelnen Vergleich und fünf Eigenschaften
mouse:usb:v046dp4041:name:Logitech MX Master:
MOUSE_DPI=1000@166
MOUSE_WHEEL_CLICK_ANGLE=15
MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL=26
MOUSE_WHEEL_CLICK_COUNT=24
MOUSE_WHEEL_CLICK_COUNT_HORIZONTAL=14
Beispiel 2. Außerkraftsetzen von Eigenschaften
#
/lib/udev/hwdb.d/60-keyboard.hwdb
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pn*
KEYBOARD_KEY_a1=help
KEYBOARD_KEY_a2=setup
KEYBOARD_KEY_a3=battery
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pn123*
KEYBOARD_KEY_a2=wlan
#
/etc/udev/hwdb.d/70-keyboard.hwdb
# deaktiviert WLAN-Taste auf allen AT-Tastaturen
evdev:atkbd:*
KEYBOARD_KEY_a2=reserved
Falls die hwdb aus diesen zwei Dateien besteht, wird eine Tastatur mit der Nachschlagezeichenkette »evdev:atkbd:dmi:bvnAcer:bdXXXXX:bd08/05/2010:svnAcer:pn123« mit allen drei Datensätzen übereinstimmen und am Ende über folgende Eigenschaften verfügen:
KEYBOARD_KEY_a1=help
KEYBOARD_KEY_a2=reserved
KEYBOARD_KEY_a3=battery
SIEHE AUCH
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian [AT] helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german [AT] lists.org>.