Migration d'un système Debian GNU/linux vers LVM2
Ce document a été rédigé dans l'espoir qu'il soit utile mais SANS AUCUNES GARANTIES. Le lecteur engage sa propre responsabilité et ne pourra en aucun cas se retourner vers l'auteur ou MayLUG en cas de problèmes. Il est rappelé au lecteur qu'il est le seul responsable de son système, de ses données ou de celle de son employeur. Il est conseillé de faire des sauvegardes et de s'assurer qu'elles fonctionnent avant d'entreprendre des modifications profondes de son système. Par ailleurs, le lecteur serait bien avisé de lire les pages de manuel des commandes qu'il exécutera sur son système pour être sûre de ce qu'elles impliquent.
Je vais décrire ici les opérations effectuées sur ma station pour migrer un système Debian GNU/Linux AMD64 vers LVM2. Cette page n'a pas pour but d'être généraliste, ni applicable à tous les cas de figure.
Le système actuel est réparti sur 2 disques dur ide :
Suite à l'ajout d'un disque sata2, l'idée est de “déplacer” le système vers celui-ci pour bénéficier des performances du sata2 et des possibilités offertes par LVM2, tout en s'évitant une ré-installation.
and voila ;)
Le nouveau disque (/dev/sdc) en place, on lance GParted puis on initialise le MBR avant de découper le disque en deux partitions primaires :
Après installation du paquet LVM2 :
Pour le détail des LV tout est possible ;)
J'ai choisis de garder un partitionnement simple, / swap et /home, je me retrouve donc avec :
Les volumes root_lv et home_lv sont formatés en ext4.
Le reste des hostilités se déroule après un reboot liveCD.
Installation du paquet LVM2, détection et activation du VG puis montage des partitions dans des emplacements temporaires.
Pour info:
On copie les données des anciens répertoires vers les nouveaux:
Il ne faut pas oublier de modifier /var/lvm/newroot/etc/fstab avec les nouveaux points de montage à moins d'aimer les surprises.
Exemple de modifications opérées:
- //uuid_de_/dev/sda1// / ext4 errors=remount-ro 0 - //uuid_de_/dev/sdb1// /home ext4 defaults 0 2 - //uuid_de_/dev/sda2// swap + //uuid_de_/dev/sdc1// /boot ext2 defaults + //uuid_de_/dev/deby_vg/root_lv// / ext4 errors=remount-ro 0 + //uuid_de_/dev/deby_vg/home_lv// /home ext4 defaults 0 2 + //uuid_de_/dev/deby_vg/swap_lv// swap sw 0 0
On peut utiliser ls -l /dev/disk/by-uuid/ pour trouver l'UUID de partitions et de volumes logiques.
Les commandes suivantes mettent en place le chroot sur l'ancien système:
sudo mount -o bind /sys /var/lvm/newroot/sys sudo mount -o bind /proc /var/lvm/newroot/proc sudo mount -o bind /dev /var/lvm/newroot/dev sudo chroot /var/lvm/newroot/
Une fois dans le chroot de “l'ancien-futur-nouveau système”, il suffit de mettre à jour grub-pc:
sudo grub-install /dev/sda
Je mets à jour Grub sur /dev/sda car j'ai choisi de ne pas modifier l'ordre de boot dans le BIOS de ma machine.
Un reboot plus tard nous voici avec un système migré sous LVM2, il reste à traiter la question des anciens disques dur.
Aillant gardé les anciens disques, je les intègre à mon “nouveau” système.