HowTo Change The LVM Volume Group Name That Includes The Root Partition: Difference between revisions
Line 92: | Line 92: | ||
'''Before''' ('''Note''': Only one Grub2 menu entry is shown for example purposes): | '''Before''' ('''Note''': Only one Grub2 menu entry is shown for example purposes): | ||
. | |||
. | |||
. | |||
menuentry " ---------------------NST 20 (64 Bit) Boot Choices---------------------" { | |||
true | |||
} | |||
menuentry 'Console, Kernel: 3.12.5-302.fc20.x86_64' --class nst --class gnu-linux --class gnu --class os { | |||
savedefault | |||
load_video | |||
set gfxpayload=keep | |||
insmod gzio | |||
insmod part_msdos | |||
insmod ext2 | |||
set root='hd0,msdos1' | |||
if [ x$feature_platform_search_hint = xy ]; then | |||
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' 8c72887d-d7db-4a3d-9b09-0d619fc11d9c | |||
else | |||
search --no-floppy --fs-uuid --set=root 8c72887d-d7db-4a3d-9b09-0d619fc11d9c | |||
fi | |||
echo 'Loading Linux 3.12.5-302.fc20.x86_64 ...' | |||
linux /vmlinuz-3.12.5-302.fc20.x86_64 root=/dev/mapper/nst_localhost-root ro rd.lvm.lv=nst_localhost/swap rd.lvm.lv=nst_localhost/root vconsole.font=latarcyrheb-sun16 crashkernel=auto systemd.unit=multi-user.target | |||
echo 'Loading initial ramdisk ...' | |||
initrd /initramfs-3.12.5-302.fc20.x86_64.img | |||
} |
Revision as of 15:30, 1 January 2014
Overview
This page describes the steps needed to change an LVM (Logical Volume Manager) Volume Group name which includes the the Root partition ("/"). The problem is that the Root partition LVM Device Mapper is referenced in different configuration files and embedded in the Kernel initramfs.
We will demonstrate the LVM Volume Group name change from "nst_localhost" to "nst20".
State Before The LVM Volume Group Name Change
The Fedora System Storage Manager utility: ssm is used to display the current storage layout on the example system.
[root@localhost ~]# ssm list ------------------------------------------------------------------- Device Free Used Total Pool Mount point ------------------------------------------------------------------- /dev/sda 30.00 GB PARTITIONED /dev/sda1 500.00 MB /boot /dev/sda2 0.00 KB 29.51 GB 29.51 GB nst_localhost ------------------------------------------------------------------- --------------------------------------------------------- Pool Type Devices Free Used Total --------------------------------------------------------- nst_localhost lvm 1 0.00 KB 29.51 GB 29.51 GB --------------------------------------------------------- ---------------------------------------------------------------------------------------------------- Volume Pool Volume size FS FS size Free Type Mount point ---------------------------------------------------------------------------------------------------- /dev/nst_localhost/root nst_localhost 27.48 GB ext4 27.48 GB 19.18 GB linear / /dev/nst_localhost/swap nst_localhost 2.03 GB linear /dev/sda1 500.00 MB ext4 500.00 MB 364.40 MB part /boot ----------------------------------------------------------------------------------------------------
Steps To Change The LVM Volume Group Name
Step 1: Change Volume Group Name
The vgrename utility will be used to change LVM Volume Name from "nst_localhost" to "nst20":
[root@localhost ~]# vgrename -v nst_localhost nst20 Checking for existing volume group "nst_localhost" Checking for new volume group "nst20" Archiving volume group "nst_localhost" metadata (seqno 5). Writing out updated volume group Renaming "/dev/nst_localhost" to "/dev/nst20" Loading nst_localhost-root table (253:0) Suppressed nst_localhost-root (253:0) identical table reload. Suspending nst_localhost-root (253:0) with device flush Loading nst_localhost-root table (253:0) Suppressed nst_localhost-root (253:0) identical table reload. Renaming nst_localhost-root (253:0) to nst20-root Resuming nst20-root (253:0) Loading nst_localhost-swap table (253:1) Suppressed nst_localhost-swap (253:1) identical table reload. Suspending nst_localhost-swap (253:1) with device flush Loading nst_localhost-swap table (253:1) Suppressed nst_localhost-swap (253:1) identical table reload. Renaming nst_localhost-swap (253:1) to nst20-swap Resuming nst20-swap (253:1) Creating volume group backup "/etc/lvm/backup/nst20" (seqno 6). Volume group "nst_localhost" successfully renamed to "nst20" Wiping cache of LVM-capable devices Wiping internal VG cache
Step 2: Update The File System Configuration File: "/etc/fstab"
Use an editor (e.g., vi) to change the LVM Volume Group Device Mapper name in the file system configuration file: "/etc/fstab" to the new "nst20" name for the "root" and "swap" Logical Volumes.
Before:
[root@localhost ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Mon Dec 30 05:16:54 2013 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/nst_localhost-root / ext4 defaults 1 1 UUID=8c72887d-d7db-4a3d-9b09-0d619fc11d9c /boot ext4 defaults 1 2 /dev/mapper/nst_localhost-swap swap swap defaults 0 0
After:
[root@localhost ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Mon Dec 30 05:16:54 2013 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/nst20-root / ext4 defaults 1 1 UUID=8c72887d-d7db-4a3d-9b09-0d619fc11d9c /boot ext4 defaults 1 2 /dev/mapper/nst20-swap swap swap defaults 0 0
Step 3: Update The Grub2 Configuration File: "/boot/grub2/grub.cfg"
Use an editor (e.g., vi) to change the LVM Volume Group Device Mapper name in the file system configuration file: "/boot/grub2/grub.cfg" to the new "nst20" name for the "root" and "swap" Logical Volumes for all relevant entries.
Before (Note: Only one Grub2 menu entry is shown for example purposes):
. . . menuentry " ---------------------NST 20 (64 Bit) Boot Choices---------------------" { true } menuentry 'Console, Kernel: 3.12.5-302.fc20.x86_64' --class nst --class gnu-linux --class gnu --class os { savedefault load_video set gfxpayload=keep insmod gzio insmod part_msdos insmod ext2 set root='hd0,msdos1' if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' 8c72887d-d7db-4a3d-9b09-0d619fc11d9c
else
search --no-floppy --fs-uuid --set=root 8c72887d-d7db-4a3d-9b09-0d619fc11d9c
fi echo 'Loading Linux 3.12.5-302.fc20.x86_64 ...' linux /vmlinuz-3.12.5-302.fc20.x86_64 root=/dev/mapper/nst_localhost-root ro rd.lvm.lv=nst_localhost/swap rd.lvm.lv=nst_localhost/root vconsole.font=latarcyrheb-sun16 crashkernel=auto systemd.unit=multi-user.target echo 'Loading initial ramdisk ...' initrd /initramfs-3.12.5-302.fc20.x86_64.img }