Lvm
LVM2:如何使用分配給它們的 VG 的 UUID 列出物理分區標識符 - 或跟踪一個到另一個
(洛基 Linux 4.18.0-305.25.1.el8_4.x86_64)
我有 2 個卷組。兩個 VG 都命名為“rl”,因此我需要重命名其中一個並且必須使用正確的 VG UUID 來執行此操作。
我找不到一種方法來辨識哪個 UUID 屬於哪個 VG,由其物理儲存定義。
我有2個驅動器。
每個驅動器都有一個 LUKS 卷,其中包含一個 LVM2 VG,然後包含 3 個 LV:
sda ├─sda1 └─sda2 └─luks-bdf533b2-afca-4eda-8029-e0346ebaea99 ├─rl-root ├─rl-swap └─rl-home sdc ├─sdc1 └─sdc2 └─luks-b41a89f1-9040-48df-a10e-11261f899d0f (not active)
pvdisplay
給我:--- Physical volume --- PV Name /dev/mapper/luks-b41a89f1-9040-48df-a10e-11261f899d0f VG Name rl ... PV UUID akQG9K-H5x4-U0K1-ij7c-4JQw-rbvk-9NUND5 --- Physical volume --- PV Name /dev/mapper/luks-bdf533b2-afca-4eda-8029-e0346ebaea99 VG Name rl ... PV UUID gwKY6m-aesa-XKZZ-TL0d-XdFt-v09N-fRHPI6
vgdisplay
給我:--- Volume group --- VG Name rl ... VG UUID lfTJTT-hCgr-nIfI-VB8o-i0ze-20F3-ReXssf --- Volume group --- VG Name rl ... VG UUID c70c76-sSDO-EjZd-Zfuc-w3Hw-Da3Y-GM9lf6
顯然,從上面我無法分辨哪個 VG UUID 對應哪個驅動器。我找不到任何方法來顯示哪些物理卷附加到了哪個 VG,因為它們都被命名為“rl”,並且所有輸出都給出了 name 並且我可以看到 UUID 的唯一位置在
vgdisplay
.我需要的是能夠使用分配給它們的 VG 的 UUID 查看物理分區標識符。有誰知道如何做到這一點?
我知道我只能列出活動的 vg 或按儲存大小進行辨識,但我想知道在一般情況下如何執行此操作。例如,我在相同的儲存介質上有多個非活動 vg,它們都具有相同的名稱。
您可以嘗試使用
vgs
自定義列輸出:vgs -o vg_name,vg_uuid,pv_uuid
它應該看起來像這樣:
VG VG UUID PV UUID rl lfTJTT-hCgr-nIfI-VB8o-i0ze-20F3-ReXssf akQG9K-H5x4-U0K1-ij7c-4JQw-rbvk-9NUND5 rl c70c76-sSDO-EjZd-Zfuc-w3Hw-Da3Y-GM9lf6 gwKY6m-aesa-XKZZ-TL0d-XdFt-v09N-fRHPI6
(或相反)
另一種方法是檢查 LVM 元數據備份
/etc/lvm/
(如果存在)。$ grep -r lfTJTT-hCgr /etc/lvm /etc/lvm/backup/rl: id = "lfTJTT-hCgr-nIfI-VB8o-i0ze-20F3-ReXssf"
(對於其他 UUID 依此類推,然後查看哪些文件匹配)
或者從備份文件中獲取所有 UUID(PV、VG、LV):
$ grep 'id = "' /etc/lvm/backup/rl id = "lfTJTT-hCgr-nIfI-VB8o-i0ze-20F3-ReXssf" id = "gwKY6m-aesa-XKZZ-TL0d-XdFt-v09N-fRHPI6"
如果 LVM 工具集不可用或者如果您將備份儲存在另一台機器上,則 grep 方法可能會很有趣,否則最好使用 LVM 實用程序。
如果合併 VG 或移動 PV,LVM 備份文件也有可能反映過時的狀態。