Lvm
為什麼 pvscan 會跳過我的設備?
我有一個 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 跳過它的所有潛在原因。
- 一個 lvm.conf 過濾器,包含指向 dev 的符號連結,例如 /dev/disk/by-id/lvm-pv-uuid-xyz 條目。
- 要將設備與 lvm 一起使用,請使用命令 lvmdevices –adddev 將其添加到設備文件中,要防止 lvm 看到或使用設備,請使用 lvmdevices –deldev 從設備文件中刪除它。vgimportdevices 命令將 VG 中的所有 PV 添加到設備文件中,並更新 VG 元數據以包含 PV 的設備 ID。可能已經嘗試過-deldev。
- 可能是在 lvm.conf 中啟用了一些跳過選項
工作
lvmdevices --adddev
證明明確添加了 pv 的工作,這意味著由於某種原因有意或錯誤地跳過了它。您需要仔細檢查 lvm.conf。我不確定這是否有幫助,但請隨時添加您有問題的發現。