The software described in this documentation is either in Extended Support or Sustaining Support. See https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdf for more information.
Oracle recommends that you upgrade the software described by this documentation as soon as possible.
The order in which rules are evaluated is important. Udev processes rules in lexical order. If you want to add your own rules, you need udev to find and evaluate these rules before the default rules.
The following example illustrates how to implement a udev rules
file that adds a symbolic link to the disk device
/dev/sdb
.
Create a rule file under
/etc/udev/rules.d
with a file name such as10-local.rules
that udev will read before any other rules file.For example, the following rule in
10-local.rules
creates the symbolic link/dev/my_disk
, which points to/dev/sdb
:KERNEL=="sdb", ACTION=="add", SYMLINK="my_disk"
Listing the device files in
/dev
shows that udev has not yet applied the rule:#
ls /dev/sd* /dev/my_disk
ls: cannot access /dev/my_disk: No such file or directory /dev/sda /dev/sda1 /dev/sda2 /dev/sdbTo simulate how udev applies its rules to create a device, you can use the udevadm test command with the device path of
sdb
listed under the/sys/class/block
hierarchy, for example:#
udevadm test /sys/class/block/sdb
run_command: calling: test udevadm_test: version ... This program is for debugging only, it does not run any program specified by a RUN key. It may show incorrect results, because some values may be different, or not available at a simulation run. ... udev_rules_apply_to_event: LINK 'my_disk' /etc/udev/rules.d/10-local.rules:1 ... link_update: creating link '/dev/my_disk' to '/dev/sdb' node_symlink: creating symlink '/dev/my_disk' to 'sdb' ... udevadm_test: DEVNAME=/dev/sdb udevadm_test: DEVTYPE=disk udevadm_test: ACTION=add udevadm_test: SUBSYSTEM=block udevadm_test: DEVLINKS=/dev/my_disk /dev/block/8:16 /dev/disk/by-id/ata-VBOX_HARDDISK_VB560b13ed-94b71e56 /dev/disk/by-id/scsi-SATA_VBOX_HARDDISK_VB560b13ed-94b71e56 /dev/disk/by-path/pci-0000:00:0d.0-scsi-0:0:0:0 /dev/disk/by-uuid/f49e77ee-d00e-4eab-aa8c-094a55bdc59a ...Restart udev, use the start_udev command:
#
start_udev
Starting udev: [OK]After Udev processes the rules files, the symbolic link
/dev/my_disk
has been added:#
ls -F /dev/sd* /dev/my_disk
/dev/my_disk@ /dev/sda /dev/sda1 /dev/sda2 /dev/sdb
To undo the changes, remove your rules file and run start_udev again.