有了這個(gè)關(guān)系圖,這種你中有我,我中有你的關(guān)系也就清晰的呈現(xiàn)在我們面前,即物理卷(PV)即表示一個(gè)磁盤(pán),多個(gè)磁盤(pán)可以組成一個(gè)卷組(VG),這個(gè)卷組(VG)又可以被劃分為多個(gè)邏輯卷(LV)。了解了這種關(guān)系,我們解決問(wèn)題的思路也就確定了,首先從底層開(kāi)始檢查,首先確定磁盤(pán)是正常的,因?yàn)榇疟P(pán)狀態(tài)燈均是和諧的綠色,而且通過(guò)磁盤(pán)管理軟件連接也顯示磁盤(pán)工作正常。
確定最底層的硬件沒(méi)有問(wèn)題后,我們懸著的心開(kāi)始逐漸下浮,因?yàn)榇疟P(pán)沒(méi)壞,磁盤(pán)中保存的數(shù)據(jù)還有救。但這也只是理論上存在挽救的可能,所以那顆脆弱的心還不能沉底,就讓它懸在半空吧。接著通過(guò)lvdisplay –v 這個(gè)命令檢查L(zhǎng)V的狀態(tài),顯示結(jié)果提示VG無(wú)法激活。為了確認(rèn)以上命令是否正確,可以通過(guò)vgdisplay –v看檢查VG的狀態(tài),結(jié)果顯示disable,即無(wú)法激活。
通過(guò)以上關(guān)系圖可知,只要保證VG下的所有磁盤(pán)正常,VG即可正常啟動(dòng)。但是我們已經(jīng)檢查了磁盤(pán)的狀態(tài),一切正常。為什么呢?VG被那幫粗人折騰的心情不好,罷工了嗎?當(dāng)然不是。首先我們檢查一下VG與磁盤(pán)的映射關(guān)系,通過(guò)命令strings /etc/lvmtab即可看到VG與磁盤(pán)硬件地址的關(guān)系。然后再通過(guò)命令ioscan -fnC disk檢查,奇怪的事情發(fā)生了,VG下的磁盤(pán)硬件地址里有/dev/dsk/c0t3d0和/dev/dsk/c0t4d0,但是通過(guò)ioscan命令檢查的結(jié)果卻沒(méi)有這兩個(gè)硬件地址,反而多出來(lái)另外兩個(gè)硬件地址/dev/dsk/c4t0d4和 /dev/rdsk/c4t0d4。兩種檢查的結(jié)果出現(xiàn)了不一致,磁盤(pán)數(shù)量雖然一樣,但是硬件地址發(fā)生了改變。世界上就是因?yàn)槌霈F(xiàn)了太多的無(wú)法解釋的現(xiàn)象,所以就產(chǎn)生了宗教忽悠那些迷茫的人們。但從小接受的唯物主義教育給了我人定勝天的信念,突破迷霧,繼續(xù)前行。
精神的力量是偉大的,回想了從小學(xué)到大學(xué)所學(xué)的思想政治課后,我就像大力水手吃了菠菜一樣,渾身充滿了力量,繼續(xù)揭密。通過(guò)管理工具(sam),我 發(fā)現(xiàn)硬件地址/dev /dsk/c0t3d0和/dev/dsk/c0t4d0居然變成了光卡的硬件地址。而/dev/dsk/c4t0d4和 /dev/rdsk/c4t0d4是新產(chǎn)生的磁盤(pán)硬件地址。迷霧逐漸消散,真相即將大白??蜌?在用戶面前要裝孫子)得詢問(wèn)了那幫搬家的粗人才知道,磁盤(pán) 柜太重了,搬不動(dòng),于是他們把磁盤(pán)拆下來(lái)搬,但是拆的過(guò)程中沒(méi)有對(duì)磁盤(pán)進(jìn)行編號(hào),插入磁盤(pán)柜后,順序發(fā)生變化了。磁盤(pán)陣列重啟后,當(dāng)然要重新分配硬件地址 了。但為什么在磁盤(pán)加載失敗的情況下,操作系統(tǒng)還可以正常啟動(dòng)呢?這還要感謝那幫粗人沒(méi)有把服務(wù)器本地的磁盤(pán)拆下來(lái)搬運(yùn),僅僅把磁盤(pán)柜中的磁盤(pán)拆了下來(lái) 了,操作系統(tǒng)安裝在本地磁盤(pán),所以操作系統(tǒng)可以正常啟動(dòng),但是磁盤(pán)柜中的磁盤(pán)卻加載失敗。真是不幸中的萬(wàn)幸啊!否則卷組恢復(fù)將不再如此簡(jiǎn)單,欲知詳情,且 聽(tīng)下次分解。
真相找到了,解決問(wèn)題的關(guān)鍵所在也就清楚了。重新分配VG與磁盤(pán)的關(guān)系即可。藥方有了,開(kāi)始治病吧。其實(shí)治病的藥方不是關(guān)鍵,關(guān)鍵是疹療的過(guò)程。老中醫(yī)要望聞問(wèn)切,而現(xiàn)在的醫(yī)生大筆一揮,藥方就出來(lái)了,全是抗生素,一個(gè)病人幾分鐘搞定,悲哀呀!
1、 因?yàn)樵揤G應(yīng)用到了雙機(jī)熱備(Serviceguard)系統(tǒng),因?yàn)槭紫纫ゼ?dòng)該VG。
#vgchange –a n vgsybase
#vgchange –c n vgsybase
2、 備份VG映射關(guān)系/etc/lvmtab(備份很重要,以前玩游戲,打老怪前一定要備份一下,死了還可以取檔重來(lái))
#cp /etc/lvmtab /etc/lvmtab.bak
#vgexport –v –p –s –m /tmp/vgsybase.map /dev/vgsybase //將VG映射復(fù)制到指定文件
3、 刪除原來(lái)的VG信息
# vgreduce -f vgsybase
4、 重建/etc/lvmtab
#vgscan –v
5、 激活VG
#vgchange –a y vgsybase
6、 檢查VG狀態(tài)
#vgdisplay –v vgsybase
通過(guò)結(jié)果顯示VG一切正常,去激活VG后,在另外一臺(tái)機(jī)器上進(jìn)行同樣的操作,VG也啟動(dòng)正常。此時(shí)再啟動(dòng)雙機(jī)程序和相關(guān)的應(yīng)用,一切都恢復(fù)了,數(shù)據(jù)也沒(méi)有丟。藥到病除,那顆懸著的心終于可以落地了。