Le challenge, ça n'était pas vraiment d'installer un Windows, mais plutôt d'utiliser l'installation existante. Après m'être figuré comment dire à Xen d'utiliser la partition physique, je me suis rendu compte qu'il ne voulait pas booter le bootloader de Windows, même avec une image de floppy.

Donc je me suis rabattu sur VMWare Server :

  1. téléchargement du .rpm
  2. debianisation du .rpm avec alien
  3. installation du .deb
  4. configuration avec vmware-config.pl

Ensuite, faut fabriquer une VM avec quelques paramètres particuliers, surtout en ce qui concerne le disque. Déjà, il faut s'assurer d'avoir le droit d'accéder aux partitions, ie. être dans le groupe disk. Puis sélectionner la partition sur laquelle est installé Windows. Là, il y a deux écoles :

  • soit on ne sélectionne que celle là, et on utilise une image de disquette bootable pour démarrer le bouzin (genre là-bas, ou directement ici)
  • soit on sélectionne la partition qui contient Grub en plus de la partition Windows, et on fait attention à bien sélectionner Windows au boot, pour éviter de trasher son Linux.

Connaissant J., j'ai préféré la première solution...

Ensuite, comme le contrôleur de disque est un bidule SATA Intel, Windows ne reconnaît pas ses petits quand il démarre dans la VM, et pouf, 0x0000007B. Pour contourner, le problème, il faut :

  1. créer un profil matériel spécial virtualisation dans Windows
  2. booter dessus
  3. remplacer le driver Intel IDE par le driver générique proposé par Windows
  4. inclure tous les drivers IDE possibles dans la base des drivers installés. Je ne vais pas mettre le fichier .reg à importer ici, qui téléchargerait ce genre de truc et l'importerait dans sa base de registre sans savoir d'où ça vient ? Voir http://support.microsoft.com/kb/314082
  5. rebooter un coup, toujours sous le profil virtualisation, pour être sûr que les drivers sont bien calés
  6. rebooter sous Linux,
  7. dans le fichier .vmx, remplacer tous les scsi0.0 par des ide0.0
  8. remplacer scsi0.present = "true" par scsi0.present = "false"
  9. dans le fichier .vmdx, remplacer lsilogic ou buslogic par ide

Ca devrait booter. Et même mieux, ça devrait aussi booter avec Xen, pour peu qu'on utilise Grub.

Bonus: un p'tit appel, le soir de Thanksgiving, à Microsoft Windows Activation Help Support I'm-locked-out-of-my-system Please Do Something. Les Indiens sont gentils mais ils prononcent les trois comme des arbres.