'\" t .TH "HWDB" "7" "" "systemd 219" "hwdb" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" hwdb \- Hardware Database .SH "DESCRIPTION" .PP The hardware database is a key\-value store for associating modalias\-like keys to udev\-properties\-like values\&. It is used primarily by udev to add the relevant properties to matching devices, but it can also be queried directly\&. .SH "HARDWARE DATABASE FILES" .PP The hwdb files are read from the files located in the system hwdb directory /usr/lib/udev/hwdb\&.d, the volatile runtime directory /run/udev/hwdb\&.d and the local administration directory /etc/udev/hwdb\&.d\&. All hwdb files are collectively sorted and processed in lexical order, regardless of the directories in which they live\&. However, files with identical filenames replace each other\&. Files in /etc have the highest priority, files in /run take precedence over files with the same name in /usr/lib\&. This can be used to override a system\-supplied hwdb file with a local file if needed; a symlink in /etc with the same name as a hwdb file in /usr/lib, pointing to /dev/null, disables the hwdb file entirely\&. hwdb files must have the extension \&.hwdb; other extensions are ignored\&. .PP The hwdb file contains data records consisting of matches and associated key\-value pairs\&. Every record in the hwdb starts with one or more match string, specifying a shell glob to compare the database lookup string against\&. Multiple match lines are specified in additional consecutive lines\&. Every match line is compared indivdually, they are combined by OR\&. Every match line must start at the first character of the line\&. .PP The match lines are followed by one or more key\-value pair lines, which are recognized by a leading space character\&. The key name and value are separated by "="\&. An empty line signifies the end of a record\&. Lines beginning with "#" are ignored\&. .PP The content of all hwdb files is read by \fBsystemd-hwdb\fR(8) and compiled to a binary database located at /etc/udev/hwdb\&.bin, or alternatively /usr/lib/udev/hwdb\&.bin if you want ship the compiled database in an immutable image\&. During runtime only the binary database is used\&. .SH "SEE ALSO" .PP \fBsystemd-hwdb\fR(8)