¿Cómo crear una image de Windows 10 de arranque en Debian?

Pseudocódigo pero originalmente desarrollado para el file iso de Windows 7 pero aplicado para Windows 8 en el hilo ¿Cómo crear una image ISO de arranque de Windows 8 en Linux? pero no funciona con Windows 10 iso

# https://rwmj.wordpress.com/2010/11/04/customizing-a-windows-7-install-iso/ # https://unix.stackexchange.com/a/312477/16920 $ dd if=../en_windows_10_x64_dvd.iso \ of=boot.img bs=2048 count=8 skip=734 $ mkisofs -o ../new-win.iso -b boot.img -no-emul-boot -c BOOT.CAT \ -iso-level 2 -udf \ -J -l -D -N -joliet-long -relaxed-filenames . 

Resultado no exitoso cuando se ejecuta en una image de Windows 10

 dd if=/home/masi/Downloads/en_windows_10_multiple_editions_version_1511_x64_dvd.iso of=/home/masi/Downloads/boot.img bs=2048 count=8 skip=734 8+0 records in 8+0 records out 16384 bytes (16 kB) copied, 0.000392973 s, 41.7 MB/s 

Algunos de los siguientes campos han cambiado para el file iso usado en dd

  • bs=2048
  • count=8
  • skip=734

¿Cómo puede estudiar qué valores de campo puede usar para Windows 10 iso?

Sistema operativo: Debian 8.5 64 bit
Hardware: Asus Zenbook UX303UA
Kernel de Linux: 4.6 de backports
Temas relacionados: ¿Cómo crear una image iso de arranque de Windows 7 en Linux? , Personalizar una installation de Windows 7 ISO
Motivación: necesito Windows 10 para usar el escáner dúplex Canon P-150, pero cuando inicié mi Windows, recibí el error 0xC0000428 porque la actualización de Windows volvió a romper las cosas allí y utilizo Windows de lo contrario es muy raro; y no me queda Windows libre para hacer dispositivos de arranque

Si va a iniciar una computadora basada en UEFI, simplemente instale Windows ISO (tenga cuidado de que sea un ISO con formatting UDF) y copie todos los files a la unidad USB. Siempre que la unidad esté en formatting FAT32, una computadora UEFI la reconocerá y le ofrecerá la opción de arrancar desde ella.

Por otro lado, para una máquina basada en BIOS, la mejor opción es configurar manualmente syslinux para encadenar el arranque de Windows. Intenté esto en Windows 8, pero aún no en 10. /dev/sdf es su unidad USB.

  • Formatee el USB a FAT32
  • Asegúrate de que el USB tenga solo una partición y esté activada (GParted ayudará con esto)
  • Copie todos los files del ISO a la unidad USB
  • Instala syslinux en tu sistema Linux
  • Ejecute syslinux -i /dev/sdf1 (la primera partición en la unidad USB, puede verificar lsblk )
  • Ejecute dd if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdf
  • Monte la unidad USB y cree el directory boot/syslinux
  • Copie todos los files *.c32 de /usr/lib/syslinux/bios en el directory boot/syslinux en el USB
  • Cree un file de text syslinux.cfg en boot/syslinux , con el text

     LABEL win10 MENU LABEL Boot Windows 10 install COM32 /boot/syslinux/chain.c32 APPEND label=win7fs ntldr=/bootmgr 

Editar: no estoy seguro de dónde coloca Debian los files syslinux; puedes encontrarlos con find / -name "mbr.bin" 2> /dev/null

Esto funcionó para mí incluso con el arranque henetworkingado / CSM (Ubuntu 16.04, Windows 10 Versión 1511 32 bits; también puedes usar genisoimage en lugar de mkisofs, mkisofs es solo un enlace simbólico):

 mkisofs \ -no-emul-boot \ -b boot/etfsboot.com \ -boot-load-seg 0x07C0 \ -boot-load-size 8 \ -iso-level 2 \ -udf \ -joliet \ -D \ -N \ -relaxed-filenames \ -o win10-1511-32bit-mod1.iso \ files/ 

(una línea larga, en bash con barras diagonales inversas al final para la continuación de la línea)

donde files/ es el subdirectory que contiene los contenidos extraídos del Windows 10 ISO.

El punto key parece ser el etfsboot.com del subdirectory boot/ del Windows 10 ISO.

Puedo arrancar el disco grabado con legacy / CSM sin ningún problema.

Solo probé con la versión 1511 de win10. Si intenta con otras versiones, por favor deje un comentario.

La única solución confiable que encontré para el caso. Cree Windows de arranque en Windows.