时间:2015-07-21 15:49:42 作者:zhijie 来源:系统之家 1. 扫描二维码随时看资讯 2. 请使用手机浏览器访问: https://m.xitongzhijia.net/xtjc/20150721/53419.html 手机查看 评论 反馈
我们可以通过/sbin/scsi_id -g -u -d /dev/$name,来获取配置中的RESULT。例如:
当你需要使用/dev/sda作为RAC设备,可以执行:
#/sbin/scsi_id -g -u -d /dev/sda
得到的结果是:
#360022a11000e085d0de717f500000003 \\配置中的RESULTRedhat 6.5 64位操作系统,举例:/etc/udev/rules.d/60-raw.rules配置文件。
ACTION==“add”, KERNEL==“sd*”, PROGRAM==“/sbin/scsi_id -g -u -s %p”,
RESULT==“360022a11000be24a0004aeee0000000a”, RUN+=“/bin/raw /dev/raw/raw1 %N”
KERNEL==“raw1”, OWNER=“grid”, GROUP=“oinstall”, MODE=“777”
通过在PROGRAM中指定的/sbin/scsi_id -g -u -s %p,来获取配置中的RESULT。例如:
如果需要使用/dev/sda作为RAC设备,可以执行:
#/sbin/scsi_id -g -u -s /block/sda
得到的结果是:
#360022a11000be24a0004aeee0000000a \\配置中的RESULT
原因分析:
Oracle RAC在安装过程中配置scsi磁盘时,传统方式是指向具体的盘符,如下/etc/udev/rules.d/60-raw.rules配置文件的内容,其中KERNEL字段代表指向的具体盘符。
ACTION==“add”,KERNEL==“sdb”,RUN+=“/bin/raw /dev/raw/raw1 %N”
ACTION==“add”,KERNEL==“sdc”,RUN+=“/bin/raw /dev/raw/raw2 %N”
ACTION==“add”,KERNEL==“sdd”,RUN+=“/bin/raw /dev/raw/raw3 %N”
KERNEL==“raw1”, OWNER=“grid”, GROUP=“oinstall”, MODE=“777”
KERNEL==“raw2”, OWNER=“grid”, GROUP=“oinstall”, MODE=“777”
KERNEL==“raw3”, OWNER=“grid”, GROUP=“oinstall”, MODE=“777”
物理设备映射中呈现给虚拟机的设备id与盘符(如sda\sdb)的对应关系在虚拟机重启后有可能发生变化,原因如下:
Linux生成sda、sdb、sdc的规则是由Linux内核决定的。Linux内核对于这种磁盘设备的映射基本上取决于三个顺序,一是磁盘驱动程序的加载;二是主机PCI插槽的监测;三是磁盘本身的监测,先来是sda,以此类推。
物理机在设备热插拔后重启,也会面临盘符的变化问题。比如启动前是sda,sdb,sdc,把sdb设备拔掉后重启,呈现的设备号是sda,sdb(原来的sdc)。
以上就是Linux虚拟机中设备id与盘符不相符的解决方法了,如果设备id与盘符不相符,虚拟机运行的过程中就会出现一些故障,所以要尽快排除这个问题。
发表评论
共0条
评论就这些咯,让大家也知道你的独特见解
立即评论以上留言仅代表用户个人观点,不代表系统之家立场