# Udev-&udev-version;

The Udev package contains programs for dynamic creation of device nodes.

## Installation of Udev

Prepare Udev for compilation:

    ./configure --prefix=/usr \
      --sysconfdir=/etc --with-rootprefix="" \
      --libexecdir=/lib --bindir=/sbin \
      --with-usb-ids-path=no --with-pci-ids-path=no \
      --enable-rule_generator --disable-introspection \
      --disable-keymap --disable-gudev

Compile the package:

    make

To test the results, issue: `make check`.

Install the package:

    make install

Create a directory for storing firmware that can be loaded by `udev`:

    install -dv /lib/firmware

## Contents of Udev

Installed programs Installed library Installed directories
- ata_id, cdrom_id, collect, create_floppy_devices, edd_id, firmware.sh, fstab_import, path_id, scsi_id, udevadm, udevd, usb_id, v4l_id, write_cd_rules, write_net_rules libudev /etc/udev, /lib/firmware, /lib/udev, /usr/share/doc/udev

Short Descriptions

`udevadm`

- Controls the runtime behavior of Udev, requests kernel events, manages the event queue, and provides simple debugging.

`udevd`

- A daemon that reorders hotplug events before submitting them to `udev`, thus avoiding various race conditions

`ata_id`

- Provides Udev with a unique string and additional information (uuid, label) for an ATA drive

`cdrom_id`

- Prints the capabilities of a CDROM or DVDROM drive.

`collect`

- DESCRIPTION REQUIRED

`create_floppy_devices`

- Creates all possible floppy devices based on the CMOS type

`edd_id`

- Identifies x86 disk drives from Enhanced Disk Drive calls

`firmware.sh`

- Script to load firmware for a device

`fstab_import`

- DESCRIPTION REQUIRED

`path_id`

- Provides the shortest possible unique hardware path to a device

`scsi_id`

- Retrieves or generates a unique SCSI identifier.

`usb_id`

- Identifies a USB block device.

`v4l_id`

- DESCRIPTION REQUIRED

`write_cd_rules`

- DESCRIPTION REQUIRED

`write_net_rules`

- DESCRIPTION REQUIRED

`libudev`

- DESCRIPTION REQUIRED

`/etc/udev`

- Contains `udev` configuration files, device permissions, and rules for device naming

`/lib/udev`

- Contains `udev` helper programs and static devices which get copied to /dev when booted.