Why is this a binary multi-megabyte blob /etc/udev/hwdb.bin and why under /etc?

Should I store it with etckeeper?

share|improve this question
I suspect, it could be same binary cache for the udev. If it is, it should be below /var/lib. I hope somebody gives a good answer, also I am curious. :-) – peterh 18 hours ago
up vote 2 down vote accepted

man hwdb:

Hardware Database Files

-- snipping unnecessary documentation details for this answer ---

The content of all hwdb files is read by systemd-hwdb(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.

man systemd-hwdb:

systemd-hwdb [options] update

Update the binary database.

You don't need to put this file in any /etc/ version control, as long as you figure out when your specific distro runs systemd-hwdb. Search for any systemd units that could be generating this file at boot or at specific runtime trigger/action.

And, it's up to the distribution to choose if it will store this binary at /etc/udev or /usr/lib/udev under the name hwdb.bin.

share|improve this answer
Thanks. /usr/bin/systemd-hwdb --version works, and these files exist and contain valid definitions, so my system is "good" and I can omit this file from etckeeper versioning: /usr/lib/systemd/system/sysinit.target.wants/systemd-hwdb-up‌​date.service and /usr/lib/systemd/system/systemd-hwdb-update.service – Jeroen Wiert Pluimers 2 mins ago

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.