1. udev生成裸盘映射文件
1.1 rhel 7.x
生成规则如下:
没有对sdb进行分区,执行如下shell脚本
for i in b ;
do
echo "KERNEL==\"sd*\", SUBSYSTEM==\"block\", PROGRAM==\"/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name\", RESULT==\"`/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i`\", SYMLINK+=\"asm-disk$i\", OWNER=\"dmdba\", GROUP=\"dinstall\", MODE=\"0660\""
done
对sdb 进行了分区,执行如下shell脚本
for i in b1 b2
do
echo "KERNEL==\"sd$i\", SUBSYSTEM==\"block\", PROGRAM==\"/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/\$parent\", RESULT==\"`/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sd${i:0:1}`\", SYMLINK+=\"asm-disk$i\", OWNER=\"dmdba\", GROUP=\"dinstall\", MODE=\"0660\""
done
未分区用 $name
分区用 $parent
1.2 Redhat 6.*
for i in b;
do
echo "KERNEL==/"sd*/", BUS==/"scsi/",PROGRAM==/"/sbin/scsi_id -g -u /dev//$name/", RESULT==/"`/sbin/scsi_id -g -u /dev/sd$i`/", NAME=/"asm-disk$i/", OWNER=/"dmdba/",GROUP=/"dinstall/", MODE=/"0660/""
done
1.3 Redhat 5.*
for i in b;
do
echo "KERNEL==/"sd*/", BUS==/"scsi/", PROGRAM==/"/sbin/scsi_id -g -u -s %p/", RESULT==/"`scsi_id -g -u -s /block/sd$i`/", NAME=/"asm-disk$i/", OWNER=/"dmdba/", GROUP=/"dinstall/", MODE=/"0660/""
done
2. 获取RESULT
在 Linux 7下,可以使用如下命令:
# /usr/lib/udev/scsi_id -g -u /dev/sdb
在 Linux 6下,可以使用如下命令:
# /sbin/scsi_id -g -u /dev/sdb
在 Linux 5下,可以使用如下命令:
# /sbin/scsi_id -g -u -s /block/sdb/sdb
启动udev
# /usr/sbin/udevadm control --reload-rules
# systemctl status systemd-udevd.service
# systemctl enable systemd-udevd.service