README revision cad4697469883b73cdd43e7e83db122951535ee8
363N/Audev - userspace device management
363N/A
363N/AFor more information see the files in the docs/ directory.
363N/A
363N/AImportant Note:
363N/A Integrating udev in the system is a whole lot of work, has complex dependencies
363N/A and differs a lot from distro to distro. All major distros depend on udev these
363N/A days and the system may not work without a proper installed version. The upstream
363N/A udev project does not support or recomend to replace a distro's udev installation
363N/A with the upstream version. The installation of a unmodified upstream version may
363N/A render your system unusable. Until now, there is no "default" setup or a set of
363N/A "default" rules provided by the upstream udev version.
363N/A
363N/ARequirements:
363N/A - 2.6.x version of the Linux kernel. See the RELEASE-NOTES file in the
363N/A udev tree and the Documentation/Changes in the kernel source tree for
363N/A the actual dependency.
363N/A
363N/A - The kernel must have sysfs and unix domain socket enabled.
363N/A (unix domain sockets (CONFIG_UNIX) as a loadable kernel module may work,
5680N/A but it is completely silly - don't complain if anything goes wrong.)
5680N/A
5600N/A - The proc filesystem must be mounted on /proc.
363N/A
363N/A - The sysfs filesystem must be mounted at /sys. No other location
363N/A will be supported by udev.
2221N/A
2221N/A
363N/AOperation:
363N/A Udev creates and removes device nodes in /dev, based on events the kernel
364N/A sends out on device discovery or removal.
363N/A
363N/A - Early in the boot process, the /dev directory should get a tmpfs
7101N/A filesystem mounted, which is populated from scratch by udev. Created nodes
6714N/A or changed permissions will not survive a reboot, which is intentional.
363N/A
844N/A - The content of /lib/udev/devices directory which contains the nodes,
7101N/A symlinks and directories, which are always expected to be in /dev, should
363N/A be copied over to the tmpfs mounted /dev, to provide the required nodes
2931N/A to initialize udev and continue booting.
363N/A
3817N/A - The udevd daemon must be started by an init script to receive netlink
3817N/A uevents from the kernel driver core.
363N/A
695N/A - From kernel version 2.6.15 on, the hotplug helper /sbin/hotplug should
365N/A be disabled with an init script before actions like loading kernel
363N/A modules are taken, which may cause a lot of events.
363N/A
363N/A - All kernel events are matched against a set of specified rules in
363N/A /etc/udev/rules.d/ which make it possible to hook into the event
363N/A processing to load required kernel modules and setup devices. For all
2221N/A devices the kernel exports a major/minor number, udev will create a
363N/A device node with the default kernel name or the one specified by a
363N/A matching udev rule.
4662N/A
695N/A
363N/ACompile Options:
363N/A DESTDIR
363N/A Prefix of install target, used for package building.
4250N/A USE_LOG
814N/A If set to 'true', udev is able to pass errors or debug information
363N/A to syslog. This is very useful to see what udev is doing or not doing.
4820N/A It is enabled by default, don't expect any useful answer, if you
791N/A need to hunt a bug, but you can't enable syslog.
791N/A DEBUG
791N/A If set to 'true', very verbose debugging messages will be compiled
4662N/A into the udev binaries. The actual level of debugging is specified
363N/A in the udev config file.
3062N/A USE_SELINUX
3062N/A If set to 'true', udev will be built with SELinux support
3062N/A enabled. This is disabled by default.
3062N/A USE_KLIBC
363N/A If set to 'true', udev is built and linked against klibc.
7101N/A Default value is 'false'. KLCC specifies the klibc compiler
363N/A wrapper, usually located at /usr/bin/klcc.
363N/A EXTRAS
363N/A list of helper programs in extras/ to build.
363N/A make EXTRAS="extras/cdrom_id extras/scsi_id extras/volume_id"
363N/A
363N/A
363N/AInstallation:
363N/A - The install target intalls the udev binaries in the default locations,
7237N/A All at boot time reqired binaries will be installed in /lib/udev or /sbin.
7237N/A
7237N/A - The default location for scripts and binaries that are called from
7237N/A rules is /lib/udev. Other packages who install udev rules, should use
7237N/A that directory too.
7360N/A
7237N/A - It is recommended to use the /lib/udev/devices directory to place
7237N/A device nodes and symlinks in, which are copied to /dev at every boot.
7237N/A That way, nodes for broken subsystems or devices which can't be
7237N/A detected automatically by the kernel, will always be available.
7237N/A
7237N/A - Copies of the rules files for the major distros are provided as examples
7237N/A in the etc/udev directory.
7237N/A
7237N/A - The persistent device naming links in /dev/disk/ are required by other
363N/A software that depends on the data udev has collected from the devices
363N/A and should be installed by default with every udev installation.
363N/A
2221N/APlease direct any comment/question/concern to the linux-hotplug-devel mailing list at:
2221N/A linux-hotplug-devel@lists.sourceforge.net
2221N/A
2221N/A