Udev
From wikinotes
Replaces linux devfs beginning with linux kernel-2.6
Responsible for managing the /dev
virtual filesystem, populating it with nodes representing devices and files.
udev was built to respond to hotplug type events, like a USB device that was just plugged in.
Documentation
man udev
https://man.archlinux.org/man/core/systemd/udev.7.en man udev.conf
https://man.archlinux.org/man/core/systemd/udev.conf.5.en
Tutorials
debian wiki https://wiki.debian.org/udev arch wiki https://wiki.archlinux.org/index.php/Udev ubuntu-forums: choose device for /dev/video0 https://askubuntu.com/questions/715333/assign-webcam-to-a-specific-dev-video arch-forums: choose device for /dev/video0 https://bbs.archlinux.org/viewtopic.php?id=162228 arch-wiki: webcam setup https://wiki.archlinux.org/title/Webcam_setup
Locations
/etc/udev/udev.conf
config /etc/udev/rules.d/*.rules
user udev rules (priority over all other rules) /usr/lib/udev/rules.d/*.rules
/usr/local/lib/udev/rules.d/*.rules
distro udev rules /run/udev/rules.d/*.rules
volatile runtime rules
Usage
journalctl -u systemd-udevd.service # see udevd logs# list info about a device and it's parent devices udevadm info \ --name=/dev/${DEVICE} \ --attribute-walk# confirm rule assigned correct device (without reloading rules) udevadm test $(udevadm info -q path -n /dev/video0) # reload rules udevadm control --reload-rules
Notes
udev rule basics udev rule syntax