熱搜:win11繞過(guò)硬件限制安裝 一鍵重裝Win10系統(tǒng) 最干凈的u盤(pán)啟動(dòng)盤(pán) 真正純凈版的win7系統(tǒng)
時(shí)間:2015-07-21 15:49:42 作者:zhijie 來(lái)源:系統(tǒng)之家 1. 掃描二維碼隨時(shí)看資訊 2. 請(qǐng)使用手機(jī)瀏覽器訪問(wèn): https://m.xitongzhijia.net/xtjc/20150721/53419.html 手機(jī)查看 評(píng)論 反饋
一般情況下Linux虛擬機(jī)中,設(shè)備id都是映射磁盤(pán)的盤(pán)符,所以設(shè)備id和盤(pán)符是相一致的。但是用戶在查看Linux設(shè)備id的時(shí)候卻發(fā)現(xiàn)Linux虛擬機(jī)中設(shè)備id與盤(pán)符不相符,這個(gè)時(shí)候該怎么辦呢?
當(dāng)用戶掛載多個(gè)scsi磁盤(pán)時(shí),重啟Linux虛擬機(jī)后虛擬機(jī)內(nèi)部磁盤(pán)映射和用戶配置的不一致。如圖所示,用戶配置的虛擬機(jī)scsi設(shè)備id與盤(pán)符對(duì)應(yīng)關(guān)系。
當(dāng)虛擬機(jī)重啟以后,虛擬機(jī)的scsi設(shè)備id與盤(pán)符的對(duì)應(yīng)關(guān)系與用戶配置的不一致。如下圖所示虛擬機(jī)的scsi設(shè)備id與盤(pán)符不一致:
在這種情況下,Oracle RAC中所使用的盤(pán)符對(duì)應(yīng)的設(shè)備發(fā)生變化時(shí),會(huì)對(duì)業(yè)務(wù)造成一定影響。
解決辦法:
使用虛擬機(jī)scsi設(shè)備時(shí)需要指定scsi設(shè)備id,此解決方法主要適用于使用整個(gè)scsi磁盤(pán),不在虛擬機(jī)內(nèi)部對(duì)scsi磁盤(pán)進(jìn)行分區(qū)的情況。環(huán)境:RedHat 6.5 64位操作系統(tǒng),舉例:/etc/udev/rules.d/60-raw.rules配置文件。
ACTION==“add”, KERNEL==“sd*”, PROGRAM==“/sbin/scsi_id -g -u -d /dev/$name”,
RESULT==“360022a11000e085d0de717f500000003”, RUN+=“/bin/raw /dev/raw/raw1 %N”
ACTION==“add”, KERNEL==“sd*”, PROGRAM==“/sbin/scsi_id -g -u -d /dev/$name”,
RESULT==“360022a11000e085d0de7372c0000002e”, RUN+=“/bin/raw /dev/raw/raw2 %N”
KERNEL==“raw1”, OWNER=“grid”, GROUP=“oinstall”, MODE=“777”
KERNEL==“raw2”, OWNER=“grid”, GROUP=“oinstall”, MODE=“777”
我們可以通過(guò)/sbin/scsi_id -g -u -d /dev/$name,來(lái)獲取配置中的RESULT。例如:
當(dāng)你需要使用/dev/sda作為RAC設(shè)備,可以執(zhí)行:
#/sbin/scsi_id -g -u -d /dev/sda
得到的結(jié)果是:
#360022a11000e085d0de717f500000003 \\配置中的RESULTRedhat 6.5 64位操作系統(tǒng),舉例:/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”
通過(guò)在PROGRAM中指定的/sbin/scsi_id -g -u -s %p,來(lái)獲取配置中的RESULT。例如:
如果需要使用/dev/sda作為RAC設(shè)備,可以執(zhí)行:
#/sbin/scsi_id -g -u -s /block/sda
得到的結(jié)果是:
#360022a11000be24a0004aeee0000000a \\配置中的RESULT
原因分析:
Oracle RAC在安裝過(guò)程中配置scsi磁盤(pán)時(shí),傳統(tǒng)方式是指向具體的盤(pán)符,如下/etc/udev/rules.d/60-raw.rules配置文件的內(nèi)容,其中KERNEL字段代表指向的具體盤(pán)符。
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”
物理設(shè)備映射中呈現(xiàn)給虛擬機(jī)的設(shè)備id與盤(pán)符(如sda\sdb)的對(duì)應(yīng)關(guān)系在虛擬機(jī)重啟后有可能發(fā)生變化,原因如下:
Linux生成sda、sdb、sdc的規(guī)則是由Linux內(nèi)核決定的。Linux內(nèi)核對(duì)于這種磁盤(pán)設(shè)備的映射基本上取決于三個(gè)順序,一是磁盤(pán)驅(qū)動(dòng)程序的加載;二是主機(jī)PCI插槽的監(jiān)測(cè);三是磁盤(pán)本身的監(jiān)測(cè),先來(lái)是sda,以此類(lèi)推。
物理機(jī)在設(shè)備熱插拔后重啟,也會(huì)面臨盤(pán)符的變化問(wèn)題。比如啟動(dòng)前是sda,sdb,sdc,把sdb設(shè)備拔掉后重啟,呈現(xiàn)的設(shè)備號(hào)是sda,sdb(原來(lái)的sdc)。
以上就是Linux虛擬機(jī)中設(shè)備id與盤(pán)符不相符的解決方法了,如果設(shè)備id與盤(pán)符不相符,虛擬機(jī)運(yùn)行的過(guò)程中就會(huì)出現(xiàn)一些故障,所以要盡快排除這個(gè)問(wèn)題。
發(fā)表評(píng)論
共0條
評(píng)論就這些咯,讓大家也知道你的獨(dú)特見(jiàn)解
立即評(píng)論以上留言僅代表用戶個(gè)人觀點(diǎn),不代表系統(tǒng)之家立場(chǎng)