
我全新安裝了 CentOS 7,它將充當 KVM 主機。
我不喜歡為卷組指定的預設名稱,我想更改它。
我在某處讀到,重命名包含 / 邏輯卷的捲組可能會導致系統在重新啟動後無法啟動。順便問一下這是為什麼呢?
我看過一些指南,但我想在這裡查看。確保系統在更改卷宗組名稱後重新啟動後仍能正常運作的步驟有哪些?
謝謝。
答案1
使用 LVM 時,RHEL/CentOS 7 initramfs 產生器似乎會自動產生root=
指定包含根檔案系統的裝置的選項。產生的條目將採用以下形式root=/dev/mapper/VGname-LVname
。
還有一兩個其他引導選項將指定要在 initramfs 階段啟動的 LV:根檔案系統的 LV 和主交換的 LV(如果 LV 上有交換)。這些選項的形式為rd.lvm.lv=VGname/LVname
.
grub2-mkconfig
如果在作業系統執行時重新命名包含根檔案系統的 VG,則在使用更新 GRUB 設定時會遇到問題:
/usr/sbin/grub2-probe: error: failed to get canonical path of `/dev/mapper/oldVGname-rootLVname'
儘管 VG 已重新命名,但舊路徑名仍然出現在 中/proc/mounts
,並且grub2-mkconfig
將無法偵測新的根檔案系統裝置名稱。
因此,在 RHEL/CentOS 7 上重新命名根 VG 時,您需要執行四個任務:
修改核心引導選項以使用 中的新名稱(
rd.lvm.lv=
如果root=
存在)/etc/default/grub
,但是別跑grub2-mkconfig
直接在實際的 GRUB 設定檔中修改相同的核心開機選項(
/boot/grub2/grub.cfg
在具有 BIOS/MBR 樣式開機的系統中;/boot/efi/EFI/redhat/grub.cfg
以 UEFI 本機樣式開機)。將有多個核心條目需要編輯:小心地更改它們。更新
/etc/fstab
按名稱引用 VG 的任何條目以使用新名稱。用於
vgrename
重命名 VG。
這些任務的順序並不重要,但所有這些任務都需要在重新啟動系統之前完成(或恢復)。並且您可能應該在進行這些更改後很快重新啟動:/proc/mounts
等中對舊根 VG 名稱的剩餘引用可能會混淆某些系統工具。
答案2
如果引導命令列(linux ...)使用 UUID 而不是 /dev/sysvg/root_lv 就足夠了。