que tal, andaba necesitado de realizar unas cosas y me encontre con este tutorial muy bueno, lo probe y si me funciono
lo pongo aca por si a alguien le sirve en el futuroValiéndonos del comando ms-sys desde Linux la tarea es muy sencilla. Partimos con una memoria USB completamente vacía, cosa de la que nos aseguramos llenando el dispositivo de ceros con el comando dd:
$ dd if=/dev/zero of=/dev/sdi
dd: writing to `/dev/sdi': No space left on device
492545+0 records in
492544+0 records out
252182528 bytes (252 MB) copied, 192.376 seconds, 1.3 MB/s
A continuación creamos la tabla de particiones y el sistema de ficheros FAT32:
$ fdisk /dev/sdi
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1009, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1009, default 1009):
Using default value 1009
Command (m for help): a
Partition number (1-4): 1
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): c
Changed system type of partition 1 to c (W95 FAT32 (LBA))
Command (m for help): p
Disk /dev/sdi: 252 MB, 252182528 bytes
8 heads, 61 sectors/track, 1009 cylinders
Units = cylinders of 488 * 512 = 249856 bytes
Device Boot Start End Blocks Id System
/dev/sdi1 * 1 1009 246165+ c W95 FAT32 (LBA)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
$ mkfs.vfat -F 32 /dev/sdi1
mkfs.vfat 2.11 (12 Mar 2005)
Y ahora escribimos un MBR y un sector de arranque para la partición:
$ ms-sys -w /dev/sdi
DOS/Windows NT master boot record successfully written to /dev/sdi
$ ms-sys -w /dev/sdi1
FAT32 DOS boot record successfully written to /dev/sdi1
$ ms-sys -p /dev/sdi1
Start sector (nr of hidden sectors) successfully written to /dev/sdi1
Physical disk drive id 0x80 (C:) successfully written to /dev/sdi1
El ms-sys con la opción -p es importante porque de otro modo, en muchos casos, el MS-DOS no consigue arrancar del disco, tal y como explica la página de manual del ms-sys:
-p, –partition
Write partition info (hidden sectors and drive id) to boot record. This might be
needed on some partitions depending on which program was used to create the file
system.
[...]
BUGS
There have been reports about unbootable FAT32 partitions created with “mformat -F c:”.
One workaround is to use gnu parted to create the partition instead. Since version 1.1.3
ms-sys has the switch -p which is supposed to fix this problem. The problem has also been
reported on partitions formatted with mkdosfs and mkfs.vfat.
El último paso es copiar a la memoria los ficheros de arranque de MS-DOS necesarios (si no los tenemos, más abajo explico de dónde podemos obtenerlos), el IO.SYS, MSDOS.SYS y COMMAND.COM, y también podemos poner ya todos los que vayamos a necesitar según el fin que tengamos pensado para este MS-DOS (especialmente interesantes pueden ser el HIMEM.SYS, el EMM386.SYS, el DBLBUFF.SYS y el IFSHLP.SYS):
$ mount /dev/sdi1 /mnt/usb
$ cd /path_a_ficheros_de_ms-dos/
$ cp io.sys msdos.sys command.com /mnt/usb/
$ cp himem.sys emm386.exe ifshlp.sys dblbuff.sys /mnt/usb
$ umount /mnt/usb
En este punto la memoria USB ya está lista para arrancar MS-DOS.
Los archivos de MS-DOS podemos tomarlos de cualquier disco de rescate o instalación que tengamos de Windows 98 o Windows ME (o de las últimas versiones de Windows 95 (OSR2) que también soportaban FAT32). Si no tenemos ninguno a mano pero sí un Windows XP, hemos de saber que el Windows XP es capaz de crearnos discos de rescate de MS-DOS de la versión que llevaba el Windows ME (en la Wikipedia se puede ver qué versiones de MS-DOS llevaba cada Windows). Para ello sólo tenemos que ir al diálogo de formatear disquetes y marcar la casilla de “Create an MS-DOS startup disk”
Fuente:
http://www.vicente-navarro.com/blog/2007/06/29/arrancar-ms-dos-desde-una-memoria-usb/