How to set custom device names using udev in CentOS/RHEL 7?

There could be a requirement from client to have custom device names such as /dev/asmdisk01 for an actual device with name /dev/sdb. Follow the steps outlined in this post to set custom device names using udev.

 

In order to create customer name (/dev/asmdisk01p1) for /dev/sdb set udev rules as below:

 

1. Find UUID of device

 

First, find the the UUID of the device with the scsi_id command as shown below.

# /usr/lib/udev/scsi_id -g -u /dev/sdb
1IET_00020002

 

Save this UUID, as this ID will be used later.

 

2. Create new udev rule

 

Create new udev rule file in appropriate location as below:

# vi /etc/udev/rules.d/99-my-asmdevices.rules

 

Add below content in 99-mydevices.rules file:

KERNEL=="sd*[!0-9]", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="1IET_00020002", RUN+="/bin/sh -c 'mknod /dev/asmdisk01p1 b $major $minor; chown grid:dba /dev/asmdisk01p1; chmod 0660 /dev/asmdisk01p1'"

 

Save the rule file.

 

3. Test new udev rule

 

Run below command or reboot to verify new udev rule

 

1. Check for new device name:

# udevadm trigger --type=devices --action=change
# /bin/ls /dev/asmdisk01p1

 

2. To reload udev rule execute below command:

# udevadm control --reload

 

3. For Troubleshooting udev rule execute below command:

# udevadm test /sys/block/sdb

 

Removing Device File

 

Remember to manually remove the device file if you no longer need it. Simply use rm to delete the device file as shown below.

# rm /dev/asmdisk01p1

 

Was this answer helpful? 0 Users Found This Useful (0 Votes)