Vous avez pu constater notre 1er article sur la modification d’un VG.
Cette fois-ci, nous allons nous focaliser sur la modification du nom d’un VG root.
Renommer le VG root
Tout au long de cette seconde procédure, le but sera de renommer le VG vg_root en vg_system. La particularité du vg_root est que votre machine virtuelle démarre grâce à ce VG. C’est pour cela que la procédure diffère et surtout, elle s’avère plus critique car votre serveur peut ne pas redémarrer en cas d’échec. Pas de panique, nous avons fait cette procédure une dizaine de fois, elle a marché à tous les coups.
Identification du VG root à renommer (vg_os parfois)
La commande vgs (ou vgdisplay) permet d’afficher les VG présents sur votre machine virtuelle. De plus, la commande lvs (ou lvdisplay) va elle vous indiquer les LV. Il est possible de taper la commande lvs “nom-du-vg-concerné-par-le-renommage” pour montrer uniquement les LV liés au VG que vous allez renommer.
[root@vm-template ~]# vgs VG #PV #LV #SN Attr VSize VFree vg_template 1 1 0 wz--n- <10,00g 0 vg_root 1 2 0 wz--n- <9,51g 0
[root@template-oracle12 ~]# lvs vg_root LV VG Attr LSize root vg_root -wi-ao---- <8,51g swap vg_root -wi-ao---- 1,00g
Renommer le VG root
Grâce à la commande vgrename, vous allez pouvoir renommer votre VG. Il faut pour cela ajouter le nom du VG initial ainsi que le nouveau nom souhaité.
[root@template-oracle12 ~]# vgrename vg_root vg_system Volume group "vg_root" successfully renamed to "vg_system"
[root@vm-template ~]# vgs VG #PV #LV #SN Attr VSize VFree vg_template 1 1 0 wz--n- <10,00g 0 vg_system 1 2 0 wz--n- <9,51g 0
Modifier le fichier FSTAB
Pour que la modification soit effective au niveau de l’OS, il faut modifier le fichier /etc/fstab. N’hésitez pas à sauvegarder votre fichier fstab d’origine, cela permet de revenir en arrière plus facilement en cas d’erreur.
[root@vm-template ~]# vi /etc/fstab avant modification : /dev/mapper/vg_root-root / xfs defaults 1 1 /dev/mapper/vg_root-swap swap swap defaults 0 0 après modification : /dev/mapper/vg_system-root / xfs defaults 1 1 /dev/mapper/vg_system-swap swap swap defaults 0 0
Modifier le fichier de configuration GRUB2
GRUB est le programme d’amorçage de la machine Linux. Il s’exécute à la mise sous tension de la VM, après les séquences de contrôle et avant le système d’exploitation. Son rôle est justement d’organiser le chargement.
On identifie les lignes qui contiennent le nom de notre vg_root pour pouvoir par la suite les modifier. Il va donc falloir modifier 2 fichiers : grub.cfg et grub.
[root@template ~]# cat /boot/grub2/grub.cfg | grep vg_root linux16 /vmlinuz-3.10.0-123.el7.x86_64 root=UUID=e6a5694b-48b2-462f-beb9-94646ec29b80 ro vconsole.keymap=fr vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_root/swap rd.lvm.lv=vg_root/root crashkernel=auto rhgb quiet numa=off transparent_hugepage=never linux16 /vmlinuz-0-rescue-284e716463bb4b6595662b6ebece03a4 root=UUID=e6a5694b-48b2-462f-beb9-94646ec29b80 ro vconsole.keymap=fr vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_root/swap rd.lvm.lv=vg_root/root crashkernel=auto rhgb quiet numa=off transparent_hugepage=never
[root@template ~]# cat /etc/default/grub | grep vg_root GRUB_CMDLINE_LINUX="vconsole.keymap=fr vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_root/swap rd.lvm.lv=vg_root/root crashkernel=auto rhgb quiet numa=off transparent_hugepage=never"
Fichier grub.cfg : par question de sécurité, nous faisons une sauvegarde du fichier (en cas de retour arrière) puis nous effectuons la modification via la commande sed.
[root@template ~]# cp -p /boot/grub2/grub.cfg /boot/grub2/grub.cfg.save
[root@template ~]# sed -i 's/vg_root/vg_system/g' /boot/grub2/grub.cfg
[root@template ~]# cat /boot/grub2/grub.cfg | grep vg_system linux16 /vmlinuz-3.10.0-123.el7.x86_64 root=UUID=e6a5694b-48b2-462f-beb9-94646ec29b80 ro vconsole.keymap=fr vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_system/swap rd.lvm.lv=vg_system/root crashkernel=auto rhgb quiet numa=off transparent_hugepage=never linux16 /vmlinuz-0-rescue-284e716463bb4b6595662b6ebece03a4 root=UUID=e6a5694b-48b2-462f-beb9-94646ec29b80 ro vconsole.keymap=fr vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_system/swap rd.lvm.lv=vg_system/root crashkernel=auto rhgb quiet numa=off transparent_hugepage=never
Fichier grub : par question de sécurité, nous faisons une sauvegarde du fichier (en cas de retour arrière) puis nous effectuons la modification via la commande sed.
[root@template ~]# cp -p /etc/default/grub /etc/default/grub.save
[root@template ~]# sed -i 's/vg_root/vg_system/g' /etc/default/grub
[root@template ~]# cat /etc/default/grub | grep vg_system GRUB_CMDLINE_LINUX="vconsole.keymap=fr vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_system/swap rd.lvm.lv=vg_system/root crashkernel=auto rhgb quiet numa=off transparent_hugepage=never"
Activer le VG et rafraichir les volumes
[root@vm-template ~]# vgchange -ay
[root@vm-template ~]# lvchange /dev/vg_system/lv_root --refresh
[root@vm-template ~]# lvchange /dev/vg_system/lv_swap --refresh
Créer une nouvelle image disque
Nous identifiions par la suite l’image disque qui est lancée au démarrage de la machine virtuelle et nous en faisons une copie. Puis nous lançons l’écriture de la nouvelle image disque qui sera utilisée lors du redémarrage du serveur.
[root@template ~]# ls -al /boot/initramfs* -rw-r--r--. 1 root root 40616443 29 oct. 18:15 /boot/initramfs-0-rescue-284e716463bb4b6595662b6ebece03a4.img -rw------- 1 root root 19555339 02 janv. 11:26 /boot/initramfs-3.10.0-123.el7.x86_64.img
[root@template ~]# uname -r 3.10.0-123.el7.x86_64
[root@template ~]# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.$(date +%m-%d-%H%M%S).bak
[root@template ~]# ls -al /boot/initramfs* -rw-r--r--. 1 root root 40616443 29 oct. 18:15 /boot/initramfs-0-rescue-284e716463bb4b6595662b6ebece03a4.img -rw------- 1 root root 19555339 02 nov. 11:26 /boot/initramfs-3.10.0-123.el7.x86_64.img -rw------- 1 root root 18960741 13 janv. 11:25 /boot/initramfs-3.10.0-123.el7.x86_64.img.01-13-112513.bak
[root@template ~]# mkinitrd -f -v /boot/initramfs-$(uname -r).img $(uname -r)
Terminer la procédure
Afin de valider la procédure, nous vous conseillons de faire un reboot de la machine afin de vérifier que toutes les modifications ont été prises en compte lors du redémarrage. N’hésitez pas à passer par l’hyperviseur en mode console pour vérifier que tout se déroule correctement.