home | codereading | contact | github | math | misc | notes | patches | tech | README


Debugging how udev create devices

To make udev outputs debugging information when creating devices, go to the /etc/udev/udev.conf and set udev_log = "debug" as told in this Novell website page.

It says that the log will be available in /var/log/messages, but I couldn't find it...

Rules for udev

Sometimes, general configurations in udev are not useful. You can easily override these rules by creating your own rule. Just add a file to the /etc/udev/rules.d directory. All files in this directory are concatenatted in lexical order and validatted.

So, imagine that your application creates the joystick device in /dev/input/js[0-9]. The [0-9] range means it can append any numeric digit to the "js" name. Your application doesn't know where the device was created. You can make a udev rule that creates the /dev/input/joystick symlink to the joystick device:

SUBSYSTEM=="input", KERNEL=="js*",          SYMLINK+="input/joystick"

See the writing udev rules article, by Daniel Drake, and udev(7) for more information.