jeudi 7 octobre 2010
Copier un fichier d'un domU HVM vers le dom0, sans interrompre le domU
Par david techer, jeudi 7 octobre 2010 à 22:42 :: Xen

Objectifs: Récupérer l'iso d'un CD présent sur ma VM Windows XP et la mettre sur mon dom0
Hier soir en rentrant du travail , j'ai voulu testé nlite. En effet, mon CD originel de XP ne contient que la SP2. Je me suis dit que ce serait bien de pouvoir disposer d'un CD avec la SP3.Du coup, j'ai suivi le tutoriel "Comment Créer Un CD Windows XP avec le Service Pack 3 – KB936929 Intégré"
Une fois le tutoriel réalisé, j'ai donc eu ma nouvelle iso fraîchement installée.
iso XP avec SP3 obtenu par nlite, à transférer sur le dom0
Or j'ai pour habitude d'avoir mes CD sur mon dom0 dans un répertoire prévu à cette effet
L'idée ici va consister Ã
- créer une snapshot LVM
- utiliser kpart, faire un montage
- copier l'iso
- démounter et supprimer la snasphot LVM
Création d'une snapshot
Avant la création de la snapshot
melina:~# lvs LV VG Attr LSize Origin Snap% Move Log Copy% Convert jenna-xp-disk-1 xen-vm -wi-a- 8,00G melina-xen01-disk xen-vm -wi-ao 20,00G melina-xen01-swap xen-vm -wi-ao 128,00M melina-xen02-disk xen-vm -wi-ao 20,00G melina-xen02-swap xen-vm -wi-ao 128,00M melina-xen03-disk xen-vm -wi-ao 20,00G melina-xen03-swap xen-vm -wi-ao 128,00M melina-xen04-disk-1 xen-vm -wi-a- 12,00G melina-xen04-disk-2 xen-vm -wi-a- 30,00G melina-xen04-disk-3 xen-vm -wi-a- 100,00G melina-xen05-disk xen-vm -wi-ao 20,00G melina-xen05-swap xen-vm -wi-ao 128,00M melina-xen06-disk xen-vm -wi-ao 22,00G melina-xen06-swap xen-vm -wi-ao 128,00M melina-xen07-disk xen-vm -wi-a- 20,00G melina-xen07-swap xen-vm -wi-a- 128,00M melina-xen08-disk-1 xen-vm -wi-ao 20,00G melina-xen08-disk-2 xen-vm -wi-ao 20,00G melina-xen09-disk xen-vm -wi-a- 15,00G melina-xen09-swap xen-vm -wi-a- 1,00G melina-xen10-disk-1 xen-vm -wi-a- 20,00G
Création de la snapshot
melina:~# lvcreate -L20G -s -n melina-xen08-disk-1-snapshot /dev/xen-vm/melina-xen08-disk-1 Logical volume "melina-xen08-disk-1-snapshot" created melina:~# lvs LV VG Attr LSize Origin Snap% Move Log Copy% Convert jenna-xp-disk-1 xen-vm -wi-a- 8,00G melina-xen01-disk xen-vm -wi-ao 20,00G melina-xen01-swap xen-vm -wi-ao 128,00M melina-xen02-disk xen-vm -wi-ao 20,00G melina-xen02-swap xen-vm -wi-ao 128,00M melina-xen03-disk xen-vm -wi-ao 20,00G melina-xen03-swap xen-vm -wi-ao 128,00M melina-xen04-disk-1 xen-vm -wi-a- 12,00G melina-xen04-disk-2 xen-vm -wi-a- 30,00G melina-xen04-disk-3 xen-vm -wi-a- 100,00G melina-xen05-disk xen-vm -wi-ao 20,00G melina-xen05-swap xen-vm -wi-ao 128,00M melina-xen06-disk xen-vm -wi-ao 22,00G melina-xen06-swap xen-vm -wi-ao 128,00M melina-xen07-disk xen-vm -wi-a- 20,00G melina-xen07-swap xen-vm -wi-a- 128,00M melina-xen08-disk-1 xen-vm owi-ao 20,00G melina-xen08-disk-1-snapshot xen-vm swi-a- 20,00G melina-xen08-disk-1 0,00 melina-xen08-disk-2 xen-vm -wi-ao 20,00G melina-xen09-disk xen-vm -wi-a- 15,00G melina-xen09-swap xen-vm -wi-a- 1,00G melina-xen10-disk-1 xen-vm -wi-a- 20,00G
Kpart et Mountage de la snapshot
melina:~# kpartx -va /dev/xen-vm/melina-xen08-disk-1-snapshot add map xen--vm-melina--xen08--disk--1--snapshot1 (252:24): 0 41913522 linear /dev/xen-vm/melina-xen08-disk-1-snapshot 63 melina:~# ls -l /dev/mapper/xen--vm-melina--xen08--disk--1--snapshot* brw-rw---- 1 root disk 252, 21 oct 7 22:48 /dev/mapper/xen--vm-melina--xen08--disk--1--snapshot brw-rw---- 1 root disk 252, 24 oct 7 22:52 /dev/mapper/xen--vm-melina--xen08--disk--1--snapshot1 brw-rw---- 1 root disk 252, 23 oct 7 22:49 /dev/mapper/xen--vm-melina--xen08--disk--1--snapshot-cow melina:~# mount -t ntfs-3g /dev/mapper/xen--vm-melina--xen08--disk--1--snapshot1 /storage/montage/ -o force $LogFile indicates unclean shutdown (0, 0) WARNING: Forced mount, reset $LogFile.
Copie sur le dom0
On vérifie le contenumelina:~# ls -al /storage/montage/ total 2407149 drwxrwxrwx 1 root root 4096 oct 7 20:01 . drwxr-xr-x 7 root root 4096 jun 4 13:21 .. -rwxrwxrwx 1 root root 0 oct 5 22:50 AUTOEXEC.BAT -rwxrwxrwx 1 root root 4952 mar 2 2006 Bootfont.bin -rwxrwxrwx 1 root root 212 oct 5 22:44 boot.ini drwxrwxrwx 1 root root 4096 oct 7 19:52 Config.Msi -rwxrwxrwx 1 root root 0 oct 5 22:50 CONFIG.SYS drwxrwxrwx 1 root root 4096 oct 6 00:55 Documents and Settings -rwxrwxrwx 1 root root 985255936 oct 7 20:34 hiberfil.sys -rwxrwxrwx 1 root root 0 oct 5 22:50 IO.SYS -rwxrwxrwx 1 root root 0 oct 5 22:50 MSDOS.SYS -rwxrwxrwx 1 root root 47564 mar 2 2006 NTDETECT.COM -rwxrwxrwx 1 root root 252240 oct 6 01:49 ntldr -rwxrwxrwx 1 root root 805306368 oct 7 20:34 pagefile.sys drwxrwxrwx 1 root root 8192 oct 7 19:51 Program Files drwxrwxrwx 1 root root 0 oct 6 21:47 RECYCLER drwxrwxrwx 1 root root 4096 oct 6 00:54 System Volume Information drwxrwxrwx 1 root root 106496 oct 7 19:57 WINDOWS drwxrwxrwx 1 root root 4096 oct 7 20:01 Windows_XP_Prod_Fr_SP3 -rwxrwxrwx 2 root root 673906688 oct 7 20:02 Windows_XP_Pro_FR_SP3.isoIl ne reste plus qu'à copier
melina:~# cp /storage/montage/Windows_XP_Pro_FR_SP3.iso /opt/xen-vm/CD/
Démountage et suppression de la snapshot
melina:~# umount /storage/montage/ melina:~# kpartx -vd /dev/xen-vm/melina-xen08-disk-1-snapshot del devmap : xen--vm-melina--xen08--disk--1--snapshot1 melina:~# lvremove -f /dev/xen-vm/melina-xen08-disk-1-snapshot Logical volume "melina-xen08-disk-1-snapshot" successfully removedOn vérifie par lvs
melina:~# lvs LV VG Attr LSize Origin Snap% Move Log Copy% Convert jenna-xp-disk-1 xen-vm -wi-a- 8,00G melina-xen01-disk xen-vm -wi-ao 20,00G melina-xen01-swap xen-vm -wi-ao 128,00M melina-xen02-disk xen-vm -wi-ao 20,00G melina-xen02-swap xen-vm -wi-ao 128,00M melina-xen03-disk xen-vm -wi-ao 20,00G melina-xen03-swap xen-vm -wi-ao 128,00M melina-xen04-disk-1 xen-vm -wi-a- 12,00G melina-xen04-disk-2 xen-vm -wi-a- 30,00G melina-xen04-disk-3 xen-vm -wi-a- 100,00G melina-xen05-disk xen-vm -wi-ao 20,00G melina-xen05-swap xen-vm -wi-ao 128,00M melina-xen06-disk xen-vm -wi-ao 22,00G melina-xen06-swap xen-vm -wi-ao 128,00M melina-xen07-disk xen-vm -wi-a- 20,00G melina-xen07-swap xen-vm -wi-a- 128,00M melina-xen08-disk-1 xen-vm -wi-ao 20,00G melina-xen08-disk-2 xen-vm -wi-ao 20,00G melina-xen09-disk xen-vm -wi-a- 15,00G melina-xen09-swap xen-vm -wi-a- 1,00G melina-xen10-disk-1 xen-vm -wi-a- 20,00G