Linux 6上使用UDEV绑定共享存储
1.硬盘的查看方式
[root@cl6-11gr2-rac1 ~]# ls -ltr /dev/sd* brw-rw----. 1 root disk 8, 48 8月 16 13:34 /dev/sdd brw-rw----. 1 root disk 8, 16 8月 16 13:34 /dev/sdb brw-rw----. 1 root disk 8, 32 8月 16 13:34 /dev/sdc brw-rw----. 1 root disk 8, 80 8月 16 13:34 /dev/sdf brw-rw----. 1 root disk 8, 64 8月 16 13:34 /dev/sde brw-rw----. 1 root disk 8, 0 8月 16 13:34 /dev/sda brw-rw----. 1 root disk 8, 4 8月 16 13:34 /dev/sda4 brw-rw----. 1 root disk 8, 8 8月 16 13:34 /dev/sda8 brw-rw----. 1 root disk 8, 9 8月 16 13:34 /dev/sda9 brw-rw----. 1 root disk 8, 1 8月 16 13:34 /dev/sda1 brw-rw----. 1 root disk 8, 6 8月 16 13:34 /dev/sda6 brw-rw----. 1 root disk 8, 3 8月 16 13:34 /dev/sda3 brw-rw----. 1 root disk 8, 2 8月 16 13:34 /dev/sda2 brw-rw----. 1 root disk 8, 7 8月 16 13:34 /dev/sda7 brw-rw----. 1 root disk 8, 5 8月 16 13:34 /dev/sda5
sda 代表本地硬盘,sda1,2,3,6..代表本地硬盘上的分区,sdb..f 代表非本地硬盘,具体硬盘分区是否挂载到系统中,可以使用df 命令查询:
[root@cl6-11gr2-rac1 ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/sda9 ext4 62G 551M 58G 1% / tmpfs tmpfs 499M 0 499M 0% /dev/shm /dev/sda1 ext4 291M 56M 220M 21% /boot /dev/sda6 ext4 5.1G 139M 4.7G 3% /home /dev/sda3 ext4 5.1G 161M 4.7G 4% /opt /dev/sda2 ext4 15G 2.9G 12G 21% /usr /dev/sda7 ext4 5.1G 139M 4.7G 3% /usr/local /dev/sda5 ext4 5.1G 611M 4.2G 13% /var
2.获得硬盘SCSI(Small Computer System Interface)ID
SCSI 是一种标准的计算机和外围设备之间的物理连接和传输数据接口,SCSI 定义标准的命令、协议和电气光学接口用于硬盘和磁带设备,配置共享存储时需要通过SCSI ID绑定设备到系统中,以下操作获取我本机中共享存储的SCSI ID:
[root@cl6-11gr2-rac1 ~]# /sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdb 1ATA_VBOX_HARDDISK_VBf1082ced-38c590fb [root@cl6-11gr2-rac1 ~]# /sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdc 1ATA_VBOX_HARDDISK_VBcb889b15-45566527 [root@cl6-11gr2-rac1 ~]# /sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdd 1ATA_VBOX_HARDDISK_VB91e00a0b-5bc96a2b [root@cl6-11gr2-rac1 ~]# /sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sde 1ATA_VBOX_HARDDISK_VBe9eca0fb-a99c152d [root@cl6-11gr2-rac1 ~]# /sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdf 1ATA_VBOX_HARDDISK_VB414d8bfa-0256c987
3.绑定共享存储
建立 rules 文件(注意格式)/etc/udev/rules.d/99-oracle-asmdevices.rules,每一个条目对应一个磁盘设备,PROGRAM 定义UDEV设备名称;NAME 定义UDEV设备链接名称,该名称将在/dev/目录下显示;RESULT 定义设备的SCSI ID;OWNER 定义设备的所有者;GROUP 定义设备所有者的用户组:
KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBf1082ced-38c590fb",NAME="asm-diskb",OWNER="grid",GROUP="asmadmin",MODE="0660" KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBcb889b15-45566527",NAME="asm-diskc",OWNER="grid",GROUP="asmadmin",MODE="0660" KERNEL=="sd*", BUS=="scsi",PROGRAM=="//sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB91e00a0b-5bc96a2b",NAME="asm-diskd",OWNER="grid",GROUP="asmadmin",MODE="0660" KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBe9eca0fb-a99c152d",NAME="asm-diske",OWNER="grid",GROUP="asmadmin",MODE="0660" KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB414d8bfa-0256c987",NAME="asm-diskf",OWNER="grid",GROUP="asmadmin",MODE="0660"
重启UDEV:
[root@cl6-11gr2-rac2 ~]# /sbin/start_udev
查看绑定后的共享存储:
[root@cl6-11gr2-rac2 ~]# ls -ltr /dev/asm* brw-rw----. 1 grid asmadmin 8, 32 8月 17 15:27 /dev/asm-diskc brw-rw----. 1 grid asmadmin 8, 16 8月 17 15:27 /dev/asm-diskb brw-rw----. 1 grid asmadmin 8, 48 8月 17 15:27 /dev/asm-diskd
4.绑定共享存储的脚本
以上是绑定共享存储的过程,目的是了解如何做,如果配置完成后没有查看到共享存储,请仔细检查配置,任何配置出错都会导致UDEV启动失败;以下脚本是自动配置共享存储的脚本,
使用时根据实际情况修改:
for i in b c d e f g ; do echo "KERNEL==\"sd*\", BUS==\"scsi\", PROGRAM==\"/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name\", RESULT==\"`/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i`\", NAME=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules done;
例如:只有/dev/sdc,/dev/sdd 时,将脚本 for i in b c d e f g 修改为 for i in c d 即可;
最后重启UDEV:
[root@cl6-11gr2-rac2 ~]# /sbin/start_udev
Hope is personal,hope is something that no one can give to you,you have to choose to believe in hope,you have to make it yourself..