Démarrer Windows XP avec grub4dos
Le démarrage de l'ISO réel avec grub legacy ou grub2 ne fonctionnera pas, mais avec les anciennes versions de Windows (c'est-à-dire XP), il est possible de décompresser le dossier i386 de l'ISO vers la clé USB, puis d'utiliser grub4dos pour appeler le chargeur de démarrage:
title windows installer via setupldr.bin
find --set-root /i386/setupldr.bin
chainloader /i386/setupldr.bin
ou
title windows installer via /bootsect.bin
find --set-root /i386/setupldr.bin
chainloader /bootsect.bin
Cela peut ne pas fonctionner avec les nouvelles versions de Windows ou avec du matériel plus récent, mais il existe également l'option de ..
Démarrer Windows 7 avec grub2
Avec grub2, quelque chose comme ça pourrait fonctionner pour Windows 7 :
menuentry "Windows 7 (bootmgr)" --class windows --class os {
insmod part_msdos
insmod ntfs
insmod ntldr
### A: either use this line or the next one, but not both
set root='(hd0,msdos1)'
### B:
### search --no-floppy --fs-uuid --set=root ____INSERT_PARTITION_UUID_HERE___
ntldr ($root)/bootmgr
}
L'option A suppose que votre clé USB / disque dur amorçable est le premier appareil et possède une table de partition de style msdos. Ajustez pour correspondre à votre configuration. Si votre périphérique de démarrage a une table de partition GPT, vous devrez probablement l'utiliser (hd0,gpt1)
(le GPT en général est plus difficile à configurer).
L'option B utilise l'UUID unique du lecteur, qui peut être vu sur Linux avec sudo blkid
ou sur OSX avec par exemple diskutil info disk0s1
(ou Utilitaire de disque> Info).
L'entrée finale pourrait ressembler par exemple à ceci:
menuentry "Windows 7 installer" --class windows --class os {
insmod part_msdos
insmod ntfs
insmod ntldr
search --no-floppy --fs-uuid --set=root 0E239BC6-F960-3107-89CF-1C97F78BB46B
ntldr /bootmgr
}