Descargue RUFUSLDR desde aquí: https://dl.dropboxusercontent.com/u/20170669/RUFUSLDR
Descargue ms-sys aquí: http://prdownloads.sourceforge.net/ms-sys/ms-sys-2.3.0.tar. gz? download
Arrastre la carpeta ms-sys-2.3.0 a un lugar que admita el indicador de ejecución (como su carpeta de inicio de Linux, muy probablemente). cd una terminal allí, escriba "make", luego "sudo make install". Muy fácil
Simpatizo contigo. He intentado tutoriales sobre cómo crear, desde Windows, una unidad USB de arranque en el instalador de WinXP. El disco parte uno, el WinToFlash uno y la utilidad HP USB Format uno me fallaron.
Rufus realmente funciona. Pero es una utilidad solo para Windows. Puede instalar VirtualBox, instalar Windows dentro de VirtualBox, instalar Rufus en la VM, compartir la unidad USB con la VM y hacer que Rufus haga que la unidad USB sea de arranque en el instalador de Windows XP.
Rufus actualmente no es compatible con la creación de un instalador USB WinXP de arranque utilizando archivos de instalación sueltos. Debe ver la iso. Entonces, tiene que VirtualBox monte la iso para instalar XP en la VM, pero eso se muestra como archivos sueltos (no verá la iso). Entonces, para que Rufus vea el archivo iso en sí, comparta el directorio en su máquina host donde se almacena el iso en la VM. Luego, señale a Rufus hacia dónde está el archivo iso en la unidad de red de la VM (Z: \ o lo que sea).
Por cierto, también puede copiar una imagen de disquete FreeDOS en la unidad, copiar también los archivos desde la iso y usar memdisk para iniciar en la imagen del disquete. Desde FreeDOS, ejecute i386 \ winnt.exe. La desventaja es que (a menos que haya encontrado un controlador NTFS de DOS?) Solo podrá instalar Windows en un volumen FAT32, no uno NTFS.
Es posible que el proceso de Rufus sea muy lento debido a que se encuentra en una máquina virtual (no entiendo por qué, tal vez estaba tonto sobre cómo configuré la configuración). Para mí personalmente, en mi computadora portátil, tardé una hora, 5 minutos y 40 segundos, creo que fue. Te diré cómo hacerlo sin Rufus en Linux. Imitaremos a Rufus, pero primero, en caso de que decida utilizar Rufus desde la VM, tenga en cuenta que Linux no podrá ver la partición después de que Rufus haya terminado con ella:
Rufus no solo formatea la partición, sino que rehace el MBR (incluida la tabla de partición). Así que primero guarde cualquier cosa de la memoria USB.
Nota: Rufus establece un truco MBR que cuando es ejecutado por el BIOS intercambia las dos primeras unidades del BIOS (0x80 se convierte en 0x81 y viceversa). Además, coloca una identificación de BIOS en este truco MBR para que la unidad comience como 0x81 (la segunda unidad). Por qué te digo esto: el truco MBR hace que Linux (y Grub2 v2.00) no pueda leer la tabla de particiones. Windows estará bien con él (déle una letra de unidad y todo) y la unidad será arrancable. Pero Linux no verá la partición y, por lo tanto, no podrá montarla. No hay problema. Guarde el MBR en el archivo:
sudo dd if=/dev/sdX of=~/Desktop/rufus_trick_mbr count=1 bs=512
Ahora use fdisk para darle un nuevo MBR. Ni siquiera estás tocando la partición en sí, solo le estás dando un nuevo MBR. En realidad, nada se hace en fdisk hasta que presione "w".
sudo fdisk /dev/sdX
p //Print partition table. fdisk, unlike the kernel, CAN make sense of the partition table as-is.
You'll probably see the partition start on sector 2048 and go to the end.
o //Tells fdisk to make a new partition table
n //create new partition. By defualt, fdisk should also make the partition start at sector 2048 and go to the end. Make sure the partition starts where it used to and ends where it used to.
select primary
t //change partition type id
7 //for ntfs
p //Make sure everything is right. And no, don't worry about the boot flag.
w //when you're sure. Remember, we saved the old mbr and can undo any mess-ups made here with dd.
También podemos hacer nuevos líos con dd:
Hammond: "No te preocupes, no volveré a cometer los mismos errores". MALCOLM: "No, no, estás cometiendo todos los nuevos".
-Jurassic Park II, El mundo perdido
Desenchufe y vuelva a conectar la memoria USB. Si nada más, / dev / sdXY debería existir al menos ahora (antes de que solo existiera / dev / sdX, no "Y"). Para montarlo, se debe instalar ntfs-3g. Si está instalado, vea si ya estaba montado (debería aparecer en el escritorio o en el panel izquierdo del explorador de archivos si es así). Si no, móntelo tú mismo. Puede intentar montarlo primero con el explorador de archivos. Aquí se explica cómo montarlo manualmente:
sudo mount -t ntfs-3g /dev/sdXY [mount point]
Haz lo que quieras hacer con él en Linux.
Si lo desea, vuelva a poner rufus_trick_mbr:
sudo dd if=~/Desktop/rufus_trick_mbr of=/dev/sdX bs=512 count=1 //No "Y"! Just /dev/sdX!
Pero no tienes que volver a poner el truco MBR. Puede utilizar el comando ntldr de Grub2 para cargar / BOOTMGR en su lugar. (Probablemente tendrá que hacer "insmod ntldr" primero para insertar el módulo ntldr).
Esto es lo que pasa:
Rufus establece el truco MBR con una entrada de tabla de partición, formatea esa partición como NTFS, coloca cosas en el sector de arranque de esa partición que solo importan los gestores de arranque de estilo ntldr, copia archivos fuera de iso a la partición, copia NTDETECT.COM desde i386 y lo coloca en el nivel raíz, copia txtsetup.sif de la carpeta i386, lo coloca en el nivel raíz Y agrega una línea, que github, c0m / pbatard / rufus / wiki / Targets-Supported no menciona, por lo que gracias "openssl md5" y cmp por señalarme esto.
redoble de tambor : Y copia SETUPLDR.BIN de la carpeta i386 al nivel raíz, lo renombra como BOOTMGR, y parchea ese binario. Sí, ese es el truco. SETUPLDR.BIN, cuando se inicia desde el CD, detecta que se ha iniciado desde el CD y busca cosas en la carpeta i386. Si arranca desde un disco duro, detecta que arrancó desde un disco duro, busca una carpeta minint en su lugar y, si se encuentra, busca una carpeta $ WIN_NT $ ~ BT para comenzar la segunda fase de instalación (después del reinicio y cuando inicias en el disco duro de destino). Así que ni siquiera puede cambiar el nombre de "i386" a "minint". Debe modificar SETUPLDR.BIN para buscar en la carpeta i386 incluso cuando se inicia desde un disco duro (como una unidad USB).
Creo que es un nombre inapropiado para Rufus llamar al binario modificado "BOOTMGR". Eso es lo que usan Vista y 7 (¿y 8?), No XP. BOOTMGR ni siquiera busca un archivo boot.ini como NTLDR (del cual SETUPLDR es una versión modificada). Así que lo renombré como "RUFUSLDR" y lo puse para descargar. Además, desearía poder distinguirlo de cualquier BOOTMGR real que pueda tener.
Rufus le obliga a formatear la unidad como NTFS si aplica una iso de instalador de Windows. Creo que esto se debe a la vista previa del desarrollador x64 de Windows 8 que contiene un archivo> 4 GB, que FAT32 no puede admitir. Pero eso no se aplica aquí. No tenemos archivos cerca de 4GB. Puedes usar FAT32 y estar bien.
Imitemos Rufus de Linux (o casi cualquier unixoide, supongo):
Asegúrese de que la unidad tenga un esquema MBR. fdisk lanzará una advertencia si es GPT y también le dará la opción de hacerlo esquemático MBR (opción "o"). De manera menos destructiva, gdisk le permitirá convertir su unidad de disco con GPT en una unidad de MBR si tiene 4 o menos particiones. Gdisk también le permitirá convertir su unidad en un disco híbrido MBR / GPT en el que puede elegir hasta 3 particiones para que sean visibles para las cosas que no conocen GPT (la cuarta ranura está ocupada para una partición protectora que cubre el resto). Incluso si solo usa fdisk, siempre que la nueva entrada de la tabla de partición todavía se inicie y se detenga en los mismos lugares, no perderá su partición; solo asegúrese de poner a cero el GPT secundario al final del disco.
Asegúrese de que la partición esté formateada como FAT32 o NTFS. Recuerde, FAT32 es más compatible con plataformas cruzadas. Si ya está formateado como FAT32 o ntfs, no necesita formatearlo:
sudo blkid / dev / sdXY [dirá aquí el sistema de archivos, junto con UUID, etiqueta, etc.]
Si no es FAT32 o NTFS, realice una de estas acciones:
sudo mkdosfs -F 32 -n [insert volume label (name) here] /dev/sdXY
sudo mkntfs -L [insert volume label here] /dev/sdXY
3 Aplique esas cosas mágicas del sector de arranque que DOS / Windows es tan quisquilloso sobre:
sudo ms-sys -w /dev/sdXY
* Acerca de esto: "-w" significa "escribir", solo escribir. En lugar de especificar qué escribir. Por lo tanto, "-w" es el modo automático de ms-sys: determina el mejor tipo de datos del sector de arranque para escribir para la situación. Me sorprendió encontrar que el auto estaba en lo cierto: para una partición FAT32, necesito FAT32 de ms-sys DOS sector de arranque no FAT32 de ms-sys NT sector de arranque, por lo que pensé que tendría que cargar un derivitive de _NT_LDR (NT Loader) (SETUPLDR. BIN es una versión modificada de NTLDR y RUFUSLDR una versión modificada de SETUPLDR.BIN).
4 Para una buena medida, escriba cosas de geometría en la partición también. Esto no cambia la geometría del disco, solo deja una nota sobre la geometría para cosas demasiado flojas para descubrir la geometría por sí mismas:
sudo ms-sys -p /dev/sdXY
* Nota: el paso 4 no se aplica a NTFS. * Otra nota: asegúrese de que su versión de kernel de Linux sea> 2.6. Kernel 2.6 tenía un error que informaba el número incorrecto de cabezas (una cuestión de geometría). Por lo tanto, la opción "-p" puede colocar la información incorrecta en el kernel 2.6. La opción "-H", que permite al usuario especificar manualmente el número de cabezas para grabar, es la solución. Pero en realidad, solo actualiza tu kernel. Si está ejecutando 2.6, está muuuy retrasado. Para contar la versión de su kernel, haga lo siguiente:
uname -r
5 Copie los archivos de la iso, carpeta, lo que sea. Muchas distribuciones montan isos al hacer doble clic en ellas, o al menos ofrecen la opción de abrir con un montador de archivos haciendo clic con el botón derecho> abrir con. Si ese no es el caso para usted, haga esto:
sudo mount -o loop (path to iso) (path to desired mount point)
6 Coloque el archivo SETUPLDR.BIN (RUFUSLDR) modificado en el nivel raíz.
7 Copie NTDETECT.COM desde i386 al nivel raíz.
8 Copie txtsetup.sif desde i386 al nivel raíz.
9 Abra la nueva copia de txtsetup.sif y Ctrl + F para "[SetupData]". Justo debajo de ese encabezado, ponga esta línea:
SetupSourceDevice = "\device\harddisk1\partition1"
10 Instale un cargador de arranque capaz de cargar cargadores de arranque de estilo NTLDR en la unidad, o en otra unidad que usará para arrancar esta unidad, o use un cargador de arranque existente. Si tiene Grub2 instalado en su disco duro para arrancar Ubuntu, puede presionar "c" una vez que vea el menú para ingresar a la línea de comandos de Grub. Si tiene Syslinux en su lugar, también puede usarlo. Solo me quedaré con Grub2 para el tutorial.
Para instalar Grub2 en el disco (lo que puede que no necesite hacer si usa el cargador de arranque existente de su disco duro):
sudo grub-install --boot-directory=[mount point of disk, not iso] [/dev/sdxy]
11a. Realice una entrada grub.cfg o ejecute manualmente lo siguiente:
grub> insmod ntldr //Inserts (loads) the Grub2 module used for loading NTLDR-style bootloaders.
grub> set root=(hdx,msdosy) //Replace x and y as appropriate. Sets the current directory to the target partition. Probably not needed if you booted off the drive you put the WinXP installer files on, but we always do this. Use "ls" to list all drives and partitions. If you only have one MBR-schemed disk with only one (or however many you made) partition(s), you'll be able to pick out which is your thumb drive. If not, try one and do "ls /". It will list the files on the root level of that partition. That should be a dead-giveaway. Notice that "ls" (without slash) lists drives and partitions, and "ls /" (with slash) lists the files on the root level of the partition that is the current working directory.
grub> ntldr /RUFUSLDR //Tells it to load RUFUSLDR.
grub> boot //That's the "go button".
11b. Como entrada de grub.cfg, se vería así (¡no alinees los corchetes, este es Grub, no la universidad!):
menuentry "Windows XP Installer" {
insmod ntldr
search --no-floppy --fs-uuid --set=root [insert filesystem's UUID here, obtaind by "sudo blkid /dev/sdXY"]
ntldr /RUFUSLDR
}
// Tenga en cuenta que lo anterior es un medio mucho más seguro de configurar el directorio de trabajo actual de Grub. También tenga en cuenta que "inicio" está implícito para las entradas del archivo de configuración.
// También tenga en cuenta que aunque es habitual tener una línea "drivemap -s (hd0) $ {root}" para iniciar Windows (hace que la unidad de Windows sea la primera unidad de BIOS), hacerlo para mi instalador USB Windows XP causó que simplemente reiniciar al intentar iniciar el cargador de arranque de estilo ntldr. Si las cosas no funcionan y está seguro de que hizo todos los pasos, intente "drivemap -s (hd0) $ {root}"
// Tenga en cuenta si tiene más de una unidad USB insertada en el momento del arranque. Su sistema iniciará la unidad USB de arranque más dominante cuando se le indique que arranque USB. Puede determinar sistemáticamente qué puertos USB son dominantes y cuáles con dos unidades USB de arranque. Para mí, no tuve que probar muchas combinaciones, porque mis puertos USB están dispuestos en columnas y columnas enteras dominaban a otras columnas. Dentro de una columna, la superior era dominante.
// Tenga en cuenta que si está iniciando su instalador USB de Windows XP desde Grub2 en otra unidad, Grub2 solo verá la unidad USB más dominante (al menos en mi sistema). Así que asegúrese de que su instalador USB WinXP esté en la ranura usada más dominante. (O simplemente cambie los dos si tiene dos unidades USB y Grub2 ve la unidad que no es del instalador de WinXP). Por supuesto, esto no es un problema si solo se inserta una unidad USB.
// Si solo se reinicia, asegúrese de haber hecho "sudo ms-sys -w / dev / sdXY" y, si es FAT32, "sudo ms-sys -p / dev / sdXY", y copió NTDETECT.COM desde i386 al nivel de raíz
// Si dice que no puede encontrar lo que sea, es posible que no esté utilizando el cargador de arranque modificado. Asegúrate de estar usando el modificado. (Tendrá un md5 diferente que i386 / SETUPLDR.BIN.) También asegúrese de que txtsetup.sif y NTDETECT.COM estén en el nivel raíz.
// Si dice insertar el CD de Windows XP SP3, asegúrese de agregar esa línea a txtsetup.sif Y de que sus archivos de identificación de CD son buenos (WIN51, WIN51IP, etc.). Simplemente borre los archivos de sangría de CD y cópielos nuevamente en caso de duda.
// Si dice que necesita insertar un disco para demostrar que califica para la instalación de actualización, ¿hay algún disco GPT insertado? Quizás esto está causando el problema. Desenchufe los discos con esquemas GPT o conviértalos a MBR en Linux. (como apague la computadora, desenchúfela, intente nuevamente. No solo jale).
// Por cierto, para instalar A una unidad USB, tendrás que hacer el hack en ngine.de/article/id/8. Sí, es posible instalar Windows XP DE USB A USB.
Disfrutar,
Jake XD