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

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

Pseudocódigo pero desarrollado originalmente para el archivo iso de Windows 7 pero aplicado para Windows 8 en el hilo¿Cómo crear una imagen 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 .

Salida fallida cuando se ejecuta en la imagen 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 archivo iso utilizado endd

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

¿Cómo puedes estudiar qué valores de campo puedes usar para la ISO de Windows 10?

SO: Debian 8.5 de 64 bits
Hardware: Asus Zenbook UX303UA
Kernel de Linux: 4.6 de backports
Temas relacionados:¿Cómo crear una imagen iso de arranque de Windows 7 en Linux?,Personalizar una ISO de instalación de Windows 7
Motivación: Necesito Windows 10 para usar el escáner dúplex Canon P-150, pero cuando inicié Windows, apareció un error0xC0000428porque la actualización de Windows volvió a estropear cosas allí y, por lo demás, uso Windows muy raramente; y no me queda Windows de sobra para crear medios de arranque

Respuesta1

Probé la solución Win7 descrita por Microsoft en una máquina con Windows:

https://www.microsoft.com/en-us/download/windows-usb-dvd-download-tool

y obtuvo el

Error 0x80080005

Así que fui a Debian Stretch 9 para intentar construir el USB de arranque de Windows 10 usando una ISO universitaria/escuela de e5.onthehub.com.

El uso ddno funciona en absoluto para Windows 10. Esto solo funciona para sistemas operativos Linux. Usar:

dd if=my-linux-os.iso of=/dev/sdX bs=4M

Nota: Nunca intente escribir en /dev/sdX1dónde X={a,b,c or d}y siempre verifique que no esté sobrescribiendo su disco duro, que generalmente es /dev/sdao /dev/sdb!

Para Windows 10 puedes usar WoeUSB pero no desde los repositorios apt/yum. Estos están obsoletos, al menos para Debian 9. Así que en su lugar utilice:

git clone https://github.com/slacka/WoeUSB.git

Luego siga las instrucciones al final de:

https://github.com/slacka/WoeUSB

Primero debe tener instalados todos los requisitos previos, como gparted, etc.

También descubrí al final del proceso que debo ejecutar woeusb con sudo. Entonces solo usas:

sudo woeusb --device local/of/my/windows-10-image.iso /dev/sdX

Y listo, funciona de maravilla. En mi caso, mi disco duro /dev/sday mi unidad USB estaban, /dev/sdbasí que escribí el ISO /dev/sdb(nuevamente, tenga cuidado, no querrá sobrescribir su sistema operativo por accidente). Luego lo instalé en una placa base MSI de clase militar con un disco duro de 2 TB conectado sin opciones de arranque rápido dentro del BIOS y simplemente funciona. Primero activé absolutamente todas las opciones UEFI para ponerlas en el estado correcto.

También tuve problemas en el momento de la instalación, con el sistema colgándose para siempre cuando usaba una cuenta de correo electrónico de Gmail para iniciar sesión y cuando el cable de Internet estaba conectado en el segundo reinicio de la máquina (durante el proceso de instalación). Si tiene este problema, desconecte Internet, reinicie la máquina, permita que se cree una cuenta genérica, inicie sesión y reinicie con el cable de Internet.

Respuesta2

Esto funcionó para mí incluso con arranque heredado/CSM (Ubuntu 16.04, Windows 10 versión 1511 de 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 invertidas al final para continuar la línea)

¿Dónde files/está el subdirectorio que contiene el contenido extraído de la ISO de Windows 10?

El punto clave parece ser el etfsboot.comsubdirectorio boot/de la ISO de Windows 10.

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

Sólo probé con la versión 1511 de win10. Si pruebas con otras versiones deja un comentario.

Respuesta3

Si va a iniciar una computadora basada en UEFI, simplemente monte la ISO de Windows (tenga cuidado de que sea una ISO con formato UDF) y copie todos los archivos a la unidad USB. Siempre que la unidad esté en formato FAT32, una computadora UEFI la reconocerá y 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 cargar en cadena el arranque de Windows. Probé esto en Windows 8, pero todavía no en 10. /dev/sdfEs tu unidad USB.

  • Formatee el USB a FAT32
  • Asegúrese de que el USB tenga solo una partición y que esté activo en el arranque (GParted le ayudará con esto)
  • Copie todos los archivos de la ISO a la unidad USB
  • Instale syslinux en su sistema Linux
  • Ejecutar syslinux -i /dev/sdf1(la primera partición en la unidad USB, puede verificarla lsblk)
  • Correrdd if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdf bs=4M
  • Monte la unidad USB y cree el directorio.boot/syslinux
  • Copie todos *.c32los archivos /usr/lib/syslinux/biosal boot/syslinuxdirectorio del USB
  • Crea un syslinux.cfgarchivo de texto en boot/syslinux, con el texto

    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 archivos syslinux; puedes encontrarlos confind / -name "mbr.bin" 2> /dev/null

Respuesta4

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

información relacionada