Ninjatrappeur's systemd working tree
Find a file
Alan Jenkins 593453115b remove deprecated envp[] in main()
envp is not standardized, and may become invalid when environment variables
are modified.  Since udev never actually uses it, we can simply remove it.

Should anyone miss it in future, they can use the standardized environ
variable - like udev_rules.c does already.
2008-09-02 23:19:36 +02:00
docs docs: update some docs and delete outdated stuff 2008-06-26 18:12:50 +02:00
extras volume_id: fail on undefined __BYTE_ORDER 2008-09-01 16:39:34 +02:00
rules libudev: require LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE 2008-08-29 21:22:24 +02:00
test udev-test.pl: add --valgrind option 2008-09-01 16:20:06 +02:00
udev remove deprecated envp[] in main() 2008-09-02 23:19:36 +02:00
.gitignore update .gitignore 2008-08-13 11:30:26 +02:00
autogen.sh autogen.sh: add --with-selinux 2008-08-30 23:08:19 +02:00
ChangeLog release 127 2008-08-29 21:41:15 +02:00
configure.ac release 127 2008-08-29 21:41:15 +02:00
COPYING
INSTALL update INSTALL 2008-08-28 22:58:03 +02:00
Makefile.am add missing 'v' for "make changelog" 2008-08-13 11:41:25 +02:00
NEWS release 127 2008-08-29 21:41:15 +02:00
README use autotools 2008-07-30 01:45:23 +02:00
TODO udev_device_init() remove statically allocated device support 2008-09-01 20:59:09 +02:00
udev.conf move default rules from /etc/udev/rules.d/ to /lib/udev/rules.d/ 2008-07-18 15:56:03 +02:00

udev - userspace device management

For more information see the files in the docs/ directory.

Important Note:
  Integrating udev in the system has complex dependencies and differs from distro
  to distro. All major distros depend on udev these days and the system may not
  work without a properly installed version. The upstream udev project does not
  recommend to replace a distro's udev installation with the upstream version.

Requirements:
  - Version 2.6.18 of the Linux kernel for reliable operation of this release of
    udev. The kernel may have a requirement on udev too, see Documentation/Changes
    in the kernel source tree for the actual dependency.

  - The kernel must have sysfs, unix domain sockets and networking enabled.
    (unix domain sockets (CONFIG_UNIX) as a loadable kernel module may work,
    but it does not make any sense - don't complain if anything goes wrong.)

  - The proc filesystem must be mounted on /proc/, the sysfs filesystem must
    be mounted at /sys/. No other locations are supported by udev.


Operation:
  Udev creates and removes device nodes in /dev/, based on events the kernel
  sends out on device discovery or removal.

  - Very early in the boot process, the /dev/ directory should get a 'tmpfs'
    filesystem mounted, which is populated from scratch by udev. Created nodes
    or changed permissions will not survive a reboot, which is intentional.

  - The content of /lib/udev/devices/ directory which contains the nodes,
    symlinks and directories, which are always expected to be in /dev, should
    be copied over to the tmpfs mounted /dev, to provide the required nodes
    to initialize udev and continue booting.

  - The old hotplug helper /sbin/hotplug should be disabled on bootup, before
    actions like loading kernel modules are taken, which may cause a lot of
    events.

  - The udevd daemon must be started on bootup to receive netlink uevents
    from the kernel driver core.

  - All kernel events are matched against a set of specified rules in
    /lib/udev/rules.d/ which make it possible to hook into the event
    processing to load required kernel modules and setup devices. For all
    devices the kernel exports a major/minor number, udev will create a
    device node with the default kernel name, or the one specified by a
    matching udev rule.

Please direct any comment/question/concern to the linux-hotplug mailing list at:
  linux-hotplug@vger.kernel.org