System-Linux

Aller au contenu | Aller au menu | Aller à la recherche

Monter une partition d'une VM (machine virtuelle)

vm jpg

ça peut servir pour réparer une bêtise...

Biensur il ne faut surtout pas faire cette manipulation si votre machine virtuelle tourne.

Cette technique fonctionne aussi pour les machines virtuelles Vmware.

J'ai eu besoin de faire cette manipulation pour réparer un Grub qui avait planté sur une VM qemu/kvm.

C'est pas de la faute à Grub c'est la mienne je l'avoue !!! :p

Visualiser l'image :

fdisk -l /var/lib/libvirt/images/centos1.img

Ici cette machine virtuelle à deux partitions, une de boot celle qui nous intéresse et une racine.

On lit le périphérique loop0 à l'image :

losetup /dev/loop0 /var/lib/libvirt/images/centos1.img

On vérifie que cela est fonctionné :

fdisk /dev/loop0

Créer un fichier de type périphérique :

Avec la commande kpartx qui permet de lire la table de partition d'un volume logique et créer les fichiers de type périphérique. Un petit man vous en dira sûrement plus.

kpartx -av /dev/loop0

Normalement (-a : add) un loop0p1 devrait apparaitre dans : /dev/mapper/

Arrivez la vous n'avez plus qu'a monter le disque :

mount /dev/mapper/loop0p1 /mnt/centos1

Une fois vos bidouilles terminer pour tout remettre en ordre :

On démonte proprement :

umount /mnt/centos1

On supprime le device map : loop0p1 (-d : delete) :

kpartx -dv /dev/loop0

On libère loop0 de l'image :

losetup -d /dev/loop0

Voila :) ainsi s'achève ce maigre article.

Par GanGan | le jeudi, septembre 23 2010 07:00

Commentaires

1. AP

jeudi, septembre 23 2010 | 08:36

On suppose bien sûr en préalable à ces manipulations que les fichiers correspondants aux disques des machines virtuelles qui nous intéressent sont des fichiers non compressés. Pour beaucoup de systèmes de virtualisation on a le choix, au moment de la création des disques, d'allouer tout l'espace d'un coup ou au contraire de créer des fichiers qui vont "gonfler" à mesure qu'on utilise l'espace disque des machines virtuelles. C'est la première option qu'il faut suivre si on veut suivre ce mode opératoire. Si on a choisi l'option 2, je sais qu'il existe des outils permettant de monter tout de même les partitions des disques qui nous intéressent...

2. GanGan

jeudi, septembre 23 2010 | 11:44

tout à fait vrai ! j'aurai du le préciser, par contre dans le cas 2 ou les disques seraient gonflant à l'usage, je ne l'ai jamais fais, si quelqu'un connait la procédure qu'il parle maintenant ou se taise à jamais !

3. Dju

jeudi, septembre 23 2010 | 22:06

ha merci bien pour la technique, je me demandais comment faire sans lancer la VM :)

sinon, quelques ch'tites fautes d'orthographes :
- On lit le périphérique loop0 à l'image --> On lie
- On vérifie que cela est fonctionné --> que cela est fonctionnel
- Arrivez la vous n'avez plus qu'a monter le disque --> arrivé la, vous n'avez plus qu'à
- Une fois vos bidouilles terminer --> terminées

désolé, mais ça pique les zieux ;)

4. Dju

jeudi, septembre 23 2010 | 22:12

ha tiens sinon, après avoir posté mon commentaire j'ai eu un message en rouge "unable to send mail". what da hell ?
et autre question : y'a moyen de monter des images de VM faites sous virtualbox (les disques en .vdi) ?
merki

5. Dju

jeudi, septembre 23 2010 | 22:16

yop, je me répond pour l'image virtualbox, c'est of course possible :)
--> http://pierre.perso.info.unicaen.fr...

6. GanGan

lundi, septembre 27 2010 | 15:42

de toutes façons, tout est possible, suffit de trouver... :)