Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

LVM 卷組遺失災難恢復實戰:pvcreate --uuid 恢復實體卷識別碼、vgcfgrestore 還原配置

編輯:Linux 教學

故障現象

伺服器非正常斷電重啟後,LVM 卷組 data 消失,導致掛載於其上的 Coremail 郵件系統無法啟動。
vgscan 無法偵測,vgcfgrestore -f /etc/lvm/backup/data data 報錯:
Cannot restore Volume Group data with 1 PVs marked as missing. Restore failed.

vgcfgrestore 錯誤截圖

根因分析

  1. 斷電導致實體卷 (PV) 超級區塊損壞或 UUID 變更。
  2. /etc/lvm/backup/data 備份檔中記錄的 PV UUID (blfaxf-3CER-4r4l-MS32-v0aN-s3Ta-DH08ZV) 與 pvdisplay /dev/emcpowera 顯示的當前 UUID 不一致。
  3. LVM 依 UUID 綁定 PV-VG 關係,UUID 不符導致 VG 找不到 PV。

恢復操作步驟 (含資料保護)

1. 先備份原始裝置資料 (關鍵!)

dd if=/dev/emcpowera of=/data/01/emcpowera.img bs=1M status=progress
# 107 GB 耗時約 7 分鐘,確保有回退點

2. 以備份檔中記錄的 UUID 重建 PV

pvcreate -u blfaxf-3CER-4r4l-MS32-v0aN-s3Ta-DH08ZV /dev/emcpowera --restorefile /etc/lvm/backup/data
# 輸出: Physical volume "/dev/emcpowera" successfully created

3. 還原 VG 配置

vgcfgrestore -f /etc/lvm/backup/data data
# 輸出: Restored volume group data

4. 驗證 PV/VG/LV 狀態

pvs
vgs
lvs
# 應可見 data VG 及其下 LV (home 等)

vgs/lvs 輸出確認

5. 啟用 LV 並掛載驗證資料

lvchange -ay /dev/data/home
mount /dev/mapper/data-home /mnt
ls /mnt/coremail/   # 確認郵件資料完整

關鍵指令解析

指令核心作用
pvcreate --uuid --restorefile指定 UUID 重寫 PV 標籤,並依備份檔恢復 PV 配置 (PE 映射等),不清除資料區
vgcfgrestore讀取 /etc/lvm/backup/ 或 /etc/lvm/archive/ 文字備份檔,重建 VG 中繼資料
lvchange -ay啟用邏輯卷 (available = yes)

預防與最佳實踐

  • UPS + 關機腳本:避免非正常斷電。
  • 定期備份 LVM 配置:/etc/lvm/backup/、/etc/lvm/archive/ 應納入異地備份。
  • 監控 PV UUID 變更:pvs -o +uuid 定期比對。
  • 多路徑裝置 (emcpower):確認 /etc/multipath.conf 綁定 WWID,防止裝置名漂移導致誤操作。
  • LVM 快照備份:lvcreate -s -n snap_name -L 10G /vg/lv 凍結時間點備份。
Copyright © Windows教程網 All Rights Reserved