Quiero hacerlo porque quiero instalar Windows 7 y mi menú de BIOS no aparece; salta al menú grub2 al inicio, pero esa es otra historia ... ¿Hay alguna manera de arrancar la iso de instalación de Windows 7 directamente desde grub2?
Quiero hacerlo porque quiero instalar Windows 7 y mi menú de BIOS no aparece; salta al menú grub2 al inicio, pero esa es otra historia ... ¿Hay alguna manera de arrancar la iso de instalación de Windows 7 directamente desde grub2?
Respuestas:
Arrancar el ISO real con grub legacy o grub2 no funcionará, pero con versiones anteriores de Windows (es decir, XP) es posible descomprimir la carpeta i386 del ISO al dispositivo USB y luego usar grub4dos para llamar al gestor de arranque:
title windows installer via setupldr.bin
find --set-root /i386/setupldr.bin
chainloader /i386/setupldr.bin
o
title windows installer via /bootsect.bin
find --set-root /i386/setupldr.bin
chainloader /bootsect.bin
Es posible que esto no funcione con versiones más nuevas de Windows o con hardware más nuevo, pero también existe la opción de ...
Con grub2 aparentemente algo como esto podría funcionar para 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
}
La opción A asume que su memoria USB / HDD de arranque es el primer dispositivo y tiene una tabla de partición de estilo msdos. Ajuste para que coincida con su configuración. Si su dispositivo de arranque tiene una tabla de particiones GPT, lo más probable es que necesite usar (hd0,gpt1)
(GPT en general es más complicado de configurar).
La opción B utiliza el UUID exclusivo de la unidad, que se puede ver en Linux con sudo blkid
o en OSX con, por ejemplo, diskutil info disk0s1
(o Utilidad de disco> Información).
La entrada final podría verse, por ejemplo, así:
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
}
Sí, pensarías que algo como esto funcionaría:
menuentry "Boot Windoze" {
search -f "--set-root /Winblows.iso"
drivemap "/Winblows.iso" '(hd32)'
drivemap '--hook' ''
set root='(hd32)'
chainloader +1
}
Pero Windows simplemente se resistirá a eso.
Si tiene al menos 4 GB de RAM, puede optar por cargar todo el DVD iso en el disco duro y arrancarlo. Para hacerlo, descargue SysLinux y extraiga el memdisk
archivo en su boot
directorio. Entonces necesita agregar código a Grub2 algo como esto
menuentry "Boot Windoze" {
search -f "--set-root /Winblows.iso"
insmod memdisk
linux16 /boot/memdisk iso
initrd16 /Winblows.iso
}
Sin embargo, ni siquiera voy a probar el código, ya que poner más de 3 GB de datos en la RAM es simplemente incorrecto (desde un punto de vista idealogical). No, realmente quería lo que querías, pero al final puse la instalación de Windows en una partición en un USB usando la herramienta de descarga de USB / DVD de Windows 7 y lo cargué en cadena. Lo siento, no parece haber otra forma en que pueda ver.
Técnicamente, la instalación desde el .iso
archivo de Windows no puede ser posible. Puede arrancar desde el .iso
uso de grub, pero después de eso, Windows perderá el contacto con la ubicación montada o no podrá hacerlo. De modo que tanto grub
Windows como Windows deben tener en cuenta el montaje y el arranque Actualmente Windows no es compatible.
Por lo tanto, debe extraer / copiar el contenido de la .iso
raíz de una partición y luego cargarla en cadena usando grub
.