
我有一台有 2 個磁碟的機器(運行 CentOS 6.5 的來賓虛擬機器)。主作業系統在主作業系統上sda
,然後在第二個作業系統上有 2TB LVM sdc
。
我在機器上添加了另外 2 個 2TB 磁碟,並正在執行格式化過程,然後使用fdisk
它添加到 LVM,但我 fdisk 了錯誤的磁碟sdc
。兩個新磁碟出現為sdb
和sdd
。像個白痴一樣,我fdisk -l
在繼續之前沒有正確檢查。
我在1上建立了一個新的主分割區,然後再次將系統id覆寫為8e(LVM)。
現在sdc
有了一個新的 UUID 和一個新的分割區表。
有人知道如何使用 vgcfgrestore util 來恢復它嗎?我可以將新的 UUID 覆寫 vg1(磁碟區組備份檔)中的舊 UUID 並執行還原嗎?
答案1
那天晚上我在調試 gparted 時也做了同樣的事情。我曾經dd if=/dev/zero count=1 of=/dev/sdc
擦除dos分區表,然後pvcreate --uuid xxxx --norestorefile
重新初始化lvm標頭,最後vcfgrestore
從/etc/lvm/backup中的備份恢復,您也可以查看該驅動器的uuid之前給出的內容到 pvcreate。
答案2
謝謝普蘇西
這比我最終所做的要容易得多。我使用 testdisk 進行了深入分析,重新發現了底層分區。這花了幾個小時,因為 2TB 硬碟已滿 89%。
一旦我找到了驅動器及其尺寸(由 testdisk 自動找到),我就編寫了更改。
但要注意的是選擇 intel 作為分割區類型。如果您選擇“無”,則它無法寫入您找到的結果。
感謝你的回答!