Lvm

為什麼 pvscan 會跳過我的設備?

  • August 29, 2022

我有一個 CentOS 7 伺服器,它配置了一個跨越 5 個外部硬碟驅動器的捲組。我將作業系統升級到 Rocky 9,現在 Rocky 9 看不到物理卷、卷組或邏輯卷。

我的物理卷(外部驅動器)是/dev/sda/dev/sdb/dev/sdc/dev/sdd/dev/sde

當我跑步時pvscan -vvv &| grep "/dev/sd[abcde]",我得到了這個:

 Found dev 8:0 /dev/sda - new alias.
 Found dev 8:16 /dev/sdb - new alias.
 Found dev 8:32 /dev/sdc - new alias.
 Found dev 8:48 /dev/sdd - new alias.
 Found dev 8:64 /dev/sde - new alias.
 /dev/sda: Skipping (deviceid)
 /dev/sdb: Skipping (deviceid)
 /dev/sdc: Skipping (deviceid)
 /dev/sdd: Skipping (deviceid)
 /dev/sde: Skipping (deviceid)

為什麼 pvscan 會跳過我的設備?

我可以掃描我的物理設備的唯一方法是如果我這樣做:sudo pvscan --devices /dev/sda,/dev/sdb,/dev/sdc,/dev/sdd,/dev/sde,這給了我:

 PV /dev/sda   VG WD_VG           lvm2 [<5.46 TiB / 0    free]
 PV /dev/sdc   VG WD_VG           lvm2 [232.88 GiB / 0    free]
 PV /dev/sdb   VG WD_VG           lvm2 [<5.46 TiB / 0    free]
 PV /dev/sdd   VG WD_VG           lvm2 [<5.46 TiB / 0    free]
 PV /dev/sde   VG WD_VG           lvm2 [<5.46 TiB / 0    free]
 Total: 5 [<22.06 TiB] / in use: 5 [<22.06 TiB] / in no VG: 0 [0   ]

但在那之後,這些設備仍然沒有出現在輸出中pvdisplay

更新:似乎執行這些命令修復了它:

sudo lvmdevices --adddev /dev/sda
sudo lvmdevices --adddev /dev/sdb
sudo lvmdevices --adddev /dev/sdc
sudo lvmdevices --adddev /dev/sdd
sudo lvmdevices --adddev /dev/sde

為什麼這是必要的?我以為 lvm 每次都掃描所有塊設備?為什麼它會保留要掃描的設備列表?

列出 pvscan 跳過它的所有潛在原因。

  1. 一個 lvm.conf 過濾器,包含指向 dev 的符號連結,例如 /dev/disk/by-id/lvm-pv-uuid-xyz 條目。
  2. 要將設備與 lvm 一起使用,請使用命令 lvmdevices –adddev 將其添加到設備文件中,要防止 lvm 看到或使用設備,請使用 lvmdevices –deldev 從設備文件中刪除它。vgimportdevices 命令將 VG 中的所有 PV 添加到設備文件中,並更新 VG 元數據以包含 PV 的設備 ID。可能已經嘗試過-deldev。
  3. 可能是在 lvm.conf 中啟用了一些跳過選項

工作lvmdevices --adddev證明明確添加了 pv 的工作,這意味著由於某種原因有意或錯誤地跳過了它。您需要仔細檢查 lvm.conf。

我不確定這是否有幫助,但請隨時添加您有問題的發現。

引用自:https://serverfault.com/questions/1109273