P2V Virtualiser un système physique

Fermé
teutates Messages postés 19624 Date d'inscription vendredi 28 décembre 2001 Statut Modérateur Dernière intervention 2 janvier 2020 - 11 juil. 2015 à 18:09
teutates Messages postés 19624 Date d'inscription vendredi 28 décembre 2001 Statut Modérateur Dernière intervention 2 janvier 2020 - 13 juil. 2015 à 18:45
Bonjour,

Je me penche sur la conversion d'une installation physique en installation virtuelle (P2V).

Attention : sujet très long ;-)

J'ai monté une machine virtuelle (VBox) de tests préalables pour explorer les solutions sous Windows comme sous GNU/Linux. D'après mes essais, c'est pas terrible. Je vous fait part de mes notes.

1 - Sous GNU/Linux

La migration se fait à froid, système éteint.

1.1 - Partimage

Cette solution nécessite l'installation de partimage et de VirtualBox (pour ses utilitaires en ligne de commande).

Attention, partimage ne sait pas encore prendre en charge le système de fichiers Ext4. Seuls sont pris en charge les formats suivants : Ext2, Ext3, ReiserFS-3, Fat16/32, HPFS, JFS, XFS. Les formats UFS et HFS sont pris en charge à l'état beta. Le format NTFS est géré de manière expérimentale.

1.1.1 - Création de la copie

Sous root
# partimage
Puis
1) Sélectionner la partition à exporter
2) Choisir le nom et emplacement de la sauvegarde
3) Suivant
4) Niveau de compression : aucune
5) Pas de segmentation des images (segmentation automatique si disque plein)
6) Lancer

Le résultat devrait donner Nom_Image.000

1.1.2 - Conversion

Sous root

a) Conversion
# VboxManage convertfromraw source target.vdi --format VDI
Attention, plus le fichier image à convertir sera gros et plus le temps de conversion sera long.

b) Changement de propriétaire

Ce disque virtuel VD ayant été créé sous root, il faut maintenant se l'approprier pour pouvoir l'exploiter.

# chown user:user fichier.vdi

1.1.3 - Virtualisation

C'est un échec total.

Windows ne démarre pas (erreur : FATAL: No bootable medium found! System halted.). En démarrant sur le CD d'installation de Windows pour tenter une réparation, le module de réparation ne détecte aucune installation de système Windows. De ce fait, il est impossible de réparer le démarrage de Windows.

Avec un système GNU/Linux (dont la partition est en Ext3), c'est le même message d'erreur qu'avec Windows (erreur : FATAL: No bootable medium found! System halted.). En démarrant cette machine virtuelle sur GParted LiveCD, le disque virtuel ainsi préparé est ... vide.

1.2 - Commande dd

Cette fois, on utilise quelques commande basiques, donc disponibles sur tous les systèmes GNU/Linux et autres variantes d'Unix, mais qemu-img doit aussi être installé pour la conversion.

1.2.1 - Création de la copie

Sous root

a) Sauvegarde :
# dd if=/dev/sda1 of=/mnt/image.dd

Restauration :
# dd if=/mnt/image.dd of=/dev/sda

Sauvegarde compressée :
# dd if=/dev/sda1 | gzip > /mnt/image.gz

Restauration décompression :
# gunzip /mnt/image.gz | dd of=/dev/sda1

1.2.2 - Conversion

Sous root

a) Conversion
# qemu-img convert -O vmdk image.dd image_hd.vmdk

b) Changement de propriétaire
# chown user:user fichier.vdi

1.2.3 - Virtualisation

C'est encore un échec total.

Windows ne démarre pas. En démarrant sur le CD d'installation de Windows pour tenter une réparation, le module de réparation ne détecte aucune installation de système Windows. De ce fait, il est impossible de réparer le démarrage de Windows.

Avec un système GNU/Linux, on obtient l'erreur "Geom Error - FATAL: INT18: BOOT FAILURE". L'utilitaire "Boot-repair-disk" (image ISO) ne solutionne rien. Et pour cause puisque GParted montre un disque virtuel vierge !

1.3 - CloneZilla

L'image générée par CloneZilla comporte plusieurs fichiers (à moins que j'ai raté un truc). De ce fait, il est impossible de transformer ce travail en fichier d'image de disque virtuel. Du moins directement, par travail de conversion. La procédure à suivre serait (j'imagine) la suivante :
a) Créer l'image du système
b) Créer la machine virtuelle (A) avec un disque virtuel vierge, et de taille adapté car la partition cible doit au moins être aussi grande que la partition source.
c) Depuis une autre machine virtuelle (B) opérationnelle, copier le contenu de l'image système créée précédemment sur un disque virtuel transitoire, ce qui implique l'utilisation de dossier partagé (le dossier où a été sauvegardé l'image)
d) Connecter le disque virtuel transitoire sur la machine virtuelle (A)
e) Démarrer la machine virtuelle (A) sur le Live CD de CloneZilla
f) Restaurer l'image sauvegardée sur le disque virtuel transitoire vers le disque virtuel principal de la machine virtuelle

Cependant, non seulement il va falloir patienter mais de plus la procédure est assez compliquée. Réalisable mais loin d'être la plus simple. Je ne l'ai pas tentée. Pour information, CloneZilla ne sait pas restaurer une image contenu sur CD ou DVD ; les images ISO ne sont donc pas exploitables ici.

2 - Depuis Windows

La conversion se fait à chaud.

2.1 - Disk2VHD

L'utilitaire est autonome, ne requiert pas d'être préalablement installé et il est simple. Par contre, il ne voit que les partitions Windows.

On sélectionne la source, soit la partition, ainsi que le fichier de destination de l'image VHD. Puis lancez.

Cependant :
  • Mieux vaut quitter toutes les applications en cours sur la machine à convertir pour éviter un échec.
  • Mieux vaut inclure la partition "Réservée au système" pour rendre l'image VHD bootable une fois connecté à la machine virtuelle.
  • Les lecteurs réseaux ne seront pas inclus dans l'image.


Télécharger Disk2VHD :
https://docs.microsoft.com/en-us/sysinternals/downloads/disk2vhd

Le fichier obtenu aura le nom Nom_Machine.VHDX.

Pour transformer ce VHDX en VHD :
VBoxManage clonehd "PATH_TO_YOUR_FILE.VHDX" --format VHD "PATH_TO_CONVERTED_FILE.vhd"

Pour transformer ce VHDX en VDI :
VBoxManage clonehd "PATH_TO_YOUR_FILE.VHDX" --format VDI "PATH_TO_CONVERTED_FILE.vdi"

Cette méthode n'est pas exploitable.
  • Le démarrage de la machine virtuelle d'un système GNU/Linux donne la ligne de commande grub (grub rescue). Mes tentatives en ligne de commande sur grub rescue ont échoué.
  • En démarrant sur le CD d'installation de Windows pour tenter une réparation, le module de réparation détecte l'installation du système Windows. Suite à cela, une réparation du démarrage n'a rien donnée. De ce fait, il est impossible de réparer le démarrage de Windows.


2.2 - VMware Converter

Il faut préalablement s'inscrire sur le site de l'éditeur pour obtenir le lien de téléchargement final. Toutefois, l'inscription est gratuite.

Téléchargement :
https://www.vmware.com/products/converter.html

L'application doit être installée auparavant. Ensuite, pour pouvoir l'utiliser, il faut lui donner le niveau de privilège Administrateur.

Pour les privilèges administrateur :
  • Clic droit sur l'icône de l'application (elle devrait être sur le bureau)
  • Onglet Compatibilité : cocher "Exécuter ce programme en tant qu'administrateur"
  • Valider


Il est à noter que VMware Converter peut également convertir depuis :
  • les images de sauvegardes TIB Acronis (True Image Echo 9.1 et 9.5, True Image Home 10 et 11) (non testé)
  • les images de sauvegardes SV2I Norton Ghost (10, 12 et 14) et Image Symantec Recovery (non testé).


Voici la procédure pour convertir un OS physique en machine virtuelle :
a) Source System
Select source type : Powered-on machine
Specify the powered-on machine : This local machine
b) Destination System
Select destination type : VMware Workstation or other VMware virtual machine
Name : le nom de la machine
Select a location for the virtual machine : renseigner le dossier de destination
c) Options
Editez pour dé/sélectionner les partitions et autres caractérisques.
A ce stade, il est possible d'opter pour des partitions non Windows mais la réussite n'est pas garantie.
d) Summary
Résumé

En patientant, on obtient 2 fichiers :
  • Nom_Machine.vmdk : le disque dur virtuelle
  • Nom_Machine.vmx : le descriptif de configuration de la machine virtuele à utiliser sous VMware Workstation ou Player.


L'application semble non fonctionnelle sous GNU/Linux via Wine. Parce qu'elle devrait être lancée sous root.

Notez que le disque virtuel VMDK obtenu est directement et immédiatement exploitable dans une machine virtuelle. Dans le cas initial d'une machine avec plusieurs systèmes, si la seule partition contenant Windows a été correctement sélectionnée, on obtient un Windows directement opérationnel et qui n'est pas "pollué" par un Grub ou autre sélecteur de système d'exploitation.

Par contre, cette astuce est inutilisable pour un système non Windows. Sous Windows, j'ai lancé VMware Converter, comme précédemment. Pour sélectionner les partitions GNU/Linux, il faut faire à l'aveuglette (logique) et ensuite dans la machine de tests, c'est un bel échec (je n'ai pas noté l'erreur !).

2.3 - Sauvegarde Windows

A partir de Windows 7, Windows donne la possibilité de sauvegarder le système, via le panneau de configuration puis la rubrique "Sauvegarder et restaurer". Un fichier VHD correspondant au disque dur sera enregistré dans un sous-dossier \WindowsImageBackup\Nom_Machine\Backup_Date\Fichier.VHD

Cependant, cette méthode n'est pas exploitable. Le démarrage de la machine virtuelle donne l'erreur "FATAL: INT18: BOOT FAILURE". En démarrant sur le CD d'installation de Windows pour tenter une réparation, le module de réparation ne détecte aucune installation de système Windows. De ce fait, il est impossible de réparer le démarrage de Windows.

3 - Conclusion temporaire

En résumé, selon mes tests, seul VMware Converter est exploitable mais uniquement sous Windows et uniquement pour une machine Windows.

En définitive, j'ai envie de dire qu'à notre niveau, celui d'un particulier sans besoin particulier, le P2V est une perte de temps. Autant recréer une machine virtuelle entièrement ce qui évitera, peut-être, des conflits ou autres problèmes de pilotes (je pense aux extensions VBox).

Avez-vous des expériences sur le P2V ? Merci par avance ;-)

A noter que je n'ai pas testé la solution Todo-Backup que je viens à peine de découvrir:
https://www.easeus.com/backup-utility/migrate-os-to-virtual-machine.html




1 réponse

jee pee Messages postés 39632 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 24 avril 2024 9 235
Modifié par jee pee le 12/07/2015 à 17:08
Salut,

Je suis plutôt d'accord avec ta conclusion ;-) Pour moi je P2V n'a de sens que si l'on veut virtualiser (ou préparer une solution de secours) une machine physique que l'on est pas capable de réinstaller.

J'utilise surtout vmware. Il y a 6/7 ans j'ai converti plusieurs machines, déjà obsolètes à l'époque, serveurs NT4 ou Windows 2000 pour les virtualiser dans un datacenter. Aujourd'hui, l'un de ces environnements, avec 4 serveurs, est toujours en service. VmwareConverter, à chaud ou à froid, est tout à fait adapté.

Désormais nous n'avons plus de serveurs physiques applicatifs Windows. Tout est virtualisé. Il m'arrive encore d'utiliser le converter, pour copier une vm et la redimensionner, ou récupérer des vms sous xen ou kvm.

Un étranger, c'est un ami qu'on n'a pas encore rencontré.
0
teutates Messages postés 19624 Date d'inscription vendredi 28 décembre 2001 Statut Modérateur Dernière intervention 2 janvier 2020 3 586
12 juil. 2015 à 17:25
Salut jee pee,

Un bail : 5 ans ;-)

J'ai été également convaincu par la solution VMWare Converter. Mais cette solution n'est valable que pour du Windows. Or, étant passé totalement sur la banquise, je cherchais une solution directement exploitable depuis la banquise (et je pense que cela se voit). Échec total.
0
jee pee Messages postés 39632 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 24 avril 2024 9 235 > teutates Messages postés 19624 Date d'inscription vendredi 28 décembre 2001 Statut Modérateur Dernière intervention 2 janvier 2020
13 juil. 2015 à 09:31
Sur ou pour Linux ?

VmwareConverter semble aussi s'intéresser à Linux. Avec une installation à la main du client de conversion sur la machine à convertir (cela est parfois aussi nécessaire sur windows) : https://www.vladan.fr/how-to-p2v-linux-into-vmware-esx-server/

Sinon j'ai aussi vu ça : https://conshell.net/wiki/index.php/Linux_P2V

Qui vaut surtout pour son introduction ;-)

P2V Linux migrations are a combination of science, art and luck.
0
teutates Messages postés 19624 Date d'inscription vendredi 28 décembre 2001 Statut Modérateur Dernière intervention 2 janvier 2020 3 586 > jee pee Messages postés 39632 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 24 avril 2024
13 juil. 2015 à 18:45
Je tente l'opération depuis Mageia 5, bien que je puisse aussi le faire depuis Debian 8. Je viens de regarder à nouveau pour VMWareConverter et il n'existe plus de version Linux. La dernière version compatible Linux est 4.0.1 datant du 21/05/2009 (pas envie de tester). L'ultime version (au 13/07/15) est la 6.0.0 pour Windows uniquement.

D'autre part, je me situe en tant que particulier. D'où l'inutilité de se casser la tête.
0