si win en usb

23
Si, estás leyendo bien. En éste post explicaré como se instala windows EN un disco extraíble (USB) o en un pendrive. Habitualmente cuando buscamos ésta información lo que encontramos es "Instalar Windows DESDE un pendrive", que es algo bueno, pero no es lo mismo. Para que sirve ésto. Por ejemplo en mi país (Uruguay), lo uso para instalarselo a los chiquilines que tienen las Magallanes que les entrega el estado. Son excelentes como vienen con Ubuntu, pero como todos están acostumbrados a Windows quieren ponerlo y ya es público como hacerlo, están los drivers, etc. Pero al hacerlo pierden Ubuntu y las máquinas tienen una SD que funciona como disco duro (un sandisk), que es de 8 gb, por lo que el espacio es chico. De ésta forma, con una SD card de 4 gb o un pendrive. Se les pone Windows sin afectar Ubuntu. Lo único que se toquetea es el orden de booteo para que la SD esté antes que el sandisk. Bueno, ahora vayamos al grano. Requerimientos : Una instalación de Windows Un disco USB2 o un Stick USB2 lo suficientemente grande 4gb. Windows XP CD. WinISO (o cualquier software que permita edición directa de archivos ISO) Microsoft CAB SDK Software que grabe formato ISO en Cd´s. Vamos a hacer una imágen del CD de WinXP, extraeremos algunos archivos de la imágen usando el editor de ISO´s. Editaremos estos archivos y los volveremos a meter en el ISO una vez modificados. La imágen resultante la quemamos en otro CD, y ya puede ser usada para instalar directamente en un dispositivo USB. Suena fácil eh. bueno vamos allá. 1) Soporta tu pc el arranque desde USB?

Upload: edwar

Post on 12-Jan-2016

20 views

Category:

Documents


3 download

DESCRIPTION

windows en usb

TRANSCRIPT

Page 1: Si WIN EN USB

Si, estás leyendo bien. En éste post explicaré como se instala windows EN un disco extraíble (USB) o en un pendrive. 

Habitualmente cuando buscamos ésta información lo que encontramos es "Instalar Windows DESDE un pendrive", que es algo bueno, pero no es lo mismo. 

Para que sirve ésto. Por ejemplo en mi país (Uruguay), lo uso para instalarselo a los chiquilines que tienen las Magallanes que les entrega el estado. Son excelentes como vienen con Ubuntu, pero como todos están acostumbrados a Windows quieren ponerlo y ya es público como hacerlo, están los drivers, etc. Pero al hacerlo pierden Ubuntu y las máquinas tienen una SD que funciona como disco duro (un sandisk), que es de 8 gb, por lo que el espacio es chico. De ésta forma, con una SD card de 4 gb o un pendrive. Se les pone Windows sin afectar Ubuntu. Lo único que se toquetea es el orden de booteo para que la SD esté antes que el sandisk. 

Bueno, ahora vayamos al grano. 

Requerimientos : 

Una instalación de Windows Un disco USB2 o un Stick USB2 lo suficientemente grande 4gb. Windows XP CD. WinISO (o cualquier software que permita edición directa de archivos ISO) Microsoft CAB SDK Software que grabe formato ISO en Cd´s. 

Vamos a hacer una imágen del CD de WinXP, extraeremos algunos archivos de la imágen usando el editor de ISO´s. Editaremos estos archivos y los volveremos a meter en el ISO una vez modificados. La imágen resultante la quemamos en otro CD, y ya puede ser usada para instalar directamente en un dispositivo USB. Suena fácil eh. bueno vamos allá. 

1) Soporta tu pc el arranque desde USB? 

Usualmente esto es una opción en la secuencia de arranque del BIOS. Si no la ves, actualiza tu BIOS. Si no estás seguro, no sabes lo suficiente y vas a meter la pata 

2) Descubriendo si tu USB-Drive arranca. 

Conecta tu USB drive al ordenador, directamente al puerto, sin Hub. Apaga el pc, desconecta todos los discos duros, pon un CD booteable de XP, comienza a instalar y ve hasta la parte donde seleccionas el disco donde quieres instalar. Si la instalación pasa de la parte donde has de seleccionar la particion. Tu USB sirve para arrancar XP. De lo contrario te dará un error de "Windows no pudo encontrar, su disco, partición, datos, etc.. bla , bla. Esto no es problema, lo único que hay que hacer es formatear el drive USB. Arrancar con el windows normalmente, buscas esta herramienta de HP , y usarla para formatear el stick o disco usb completamente

Page 2: Si WIN EN USB

en formato NTFS. 

3) Haciendo la imágen del disco de XP. 

Fácil. Abre WinISO, vete a Actions-> Make ISO from CDROM, y guarda la imágen de CD. Ya está. 

4) Extrayendo los archivos necesarios 

Una vez tenemos la imágen, la cargamos en WinISO. Vamos a la carpeta i386, seleccionamos los archivos siguientes : 

TXTSETUP.SIF DOSNET.INF USB.IN_ USBPORT.IN_ USBSTOR.IN_ Vamos a Actions -> Extract y los ponemos en una carpeta aparte para trabajar con ellos. 

5) Desempaquetando los archivos IN_ 

De la linea de comando usamos el Cab SDK. cabarc x USBSTOR.IN_ cabarc x USB.IN_ cabarc x USBPORT.IN_ 

y nos quedarían los 3 unpacked : 

usb.inf usbport.inf usbstor.inf ok ahora borramos los .IN_ del *.in_ 

6) Editando los archivos. 

Bien este es paso principal. Usaremos un editor de texto simple como Notepad . 

6-A) TXTSETUP.SIF 

Este archivo es cargado en el paso inicial de la instalación. Aqui cambiaremos la forma en que windows trata los dispositivos USB durante el arranque del sistema. Por defecto son tratados como dispositivos de entrada (input devices) durante la instalación. Lo cambiaremos para que los incluya como dispositivos de almacenamiento (mass storage driver) que por tanto necesita

Page 3: Si WIN EN USB

ser cargado antes por el instalador para que funcione la cosa. 

Primero, movemos la entrada siguiente desde [InputDevicesSupport.Load] hacia la sección[BootBusExtenders.Load] 

[BootBusExtenders.Load] pci = pci.sys acpi = acpi.sys isapnp = isapnp.sys acpiec = acpiec.sys ohci1394 = ohci1394.sys usbehci = usbehci.sys usbohci = usbohci.sys usbuhci = usbuhci.sys usbhub = usbhub.sys usbstor = usbstor.sys 

[InputDevicesSupport.Load] usbehci = usbehci.sys usbohci = usbohci.sys usbuhci = usbuhci.sys usbhub = usbhub.sys usbccgp = usbccgp.sys hidusb = hidusb.sys ****** = ******.sys serenum = serenum.sys usbstor = usbstor.sys 

... ahora lo mismo para [BootBusExtenders] y [InputDevicesSupport] 

[BootBusExtenders] pci = "PCI-Bustreiber",files.pci,pci acpi = "ACPI Plug & Play-Bustreiber",files.acpi,acpi isapnp = "ISA Plug & Play-Bustreiber",files.isapnp,isapnp acpiec = "Integrierter ACPI-Controllertreiber",files.none,acpiec ohci1394 = "IEEE-1394-Bus-OHCI-konformer Anschlusstreiber",files.ohci1394,ohci1394 usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci usbohci = "Open Hostcontroller",files.usbohci,usbohci usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor 

Page 4: Si WIN EN USB

[InputDevicesSupport] usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci usbohci = "Open Hostcontroller",files.usbohci,usbohci usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub hidusb = "HID-Parser",files.hidusb,hidusb ****** = "Treiber f?r seriellen Anschluss",files.none,****** serenum = "Enumerator f?r seriellen Anschluss",files.none,serenum usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor usbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp 

Luego escribimos algunos keys en el registro. Inserta lo siguiente en la sección [HiveInfs.Fresh] : [HiveInfs.Fresh] AddReg = hivedef.inf,AddReg AddReg = hivesys.inf,AddReg AddReg = hivesft.inf,AddReg AddReg = hivecls.inf,AddReg AddReg = hiveusd.inf,AddReg AddReg = dmreg.inf,DM.AddReg AddReg = usbboot.inf,usbservices y en [SourceDisksFiles] también 

[SourceDisksFiles] usbboot.inf = 1,,,,,,_x,3,,3 bootvid.dll = 1,,,,,,3_,2,0,0,,1,2 kdcom.dll = 1,,,,,,3_,2,0,0,,1,2 

Finalmente, salvamos y cerramos TXTSETUP.SIF. ya terminamos con este. 

6-B) DOSNET.INF 

Abrimos DOSNET.INF , cambiamos la sección   que nos quede asi: 

 d1,usbboot.inf d1,_default.pif d1,12520437.cpx d1,12520850.cpx 

.... 

Atención: donde dice   deben poner [ F i l e s ] sin los espacios y con los paréntesis rectos. (Taringa por error lo corrige) 

Page 5: Si WIN EN USB

6-C) usb.inf 

Cambiamos lo que está en verde en ambas secciones [StandardHub.AddService] y en [CommonClassParent.AddService] 

[StandardHub.AddService] DisplayName = %StandardHub.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%usbhub.sys LoadOrderGroup = Boot Bus Extender 

[CommonClassParent.AddService] DisplayName = %GenericParent.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%usbccgp.sys LoadOrderGroup = Boot Bus Extender 

6-D) usbport.inf Cambiamos en la sección [EHCI.AddService], [OHCI.AddService] , [UHCI.AddService] y en [ROOTHUB.AddService] : 

[EHCI.AddService] DisplayName = %EHCIMP.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%usbehci.sys LoadOrderGroup = Boot Bus Extender 

[OHCI.AddService] DisplayName = %OHCIMP.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%usbohci.sys LoadOrderGroup = Boot Bus Extender 

Page 6: Si WIN EN USB

[UHCI.AddService] DisplayName = %UHCIMP.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%usbuhci.sys LoadOrderGroup = Boot Bus Extender 

[ROOTHUB.AddService] DisplayName = %ROOTHUB.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%usbhub.sys LoadOrderGroup = Boot Bus Extender 

6-E) usbstor.inf Cambiamos / Añadimos en la sección [USBSTOR.AddService] 

[USBSTOR.AddService] DisplayName = %USBSTOR.SvcDesc% ServiceType = 1 StartType = 0 Tag = 3 ErrorControl = 1 ServiceBinary = %12%USBSTOR.SYS LoadOrderGroup = Boot Bus Extender 

6-F) Nuevo archivo: USBBOOT.INF Creamos un archivo nuevo llamado USBBOOT.INF en el mismo directorio donde hemos cambiado los otros archivos y le pegamos esto dentro : 

[usbservices] 

HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," DisplayName",0x00000000,"USB Mass Storage Driver" HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," ErrorControl",0x00010001,1 HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," Group",0x00000000,"System Reserved" HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," ImagePath",0x00020000,"system32DRIVERSUSBSTOR.SY S" 

Page 7: Si WIN EN USB

HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," Start",0x00010001,0 HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," Type",0x00010001,1 

HKLM,"SYSTEMCurrentControlSetServicesusbehci"," DisplayName",0x00000000,"USB 2.0 Enhanced Host Controller Miniport Driver" HKLM,"SYSTEMCurrentControlSetServicesusbehci"," ErrorControl",0x00010001,1 HKLM,"SYSTEMCurrentControlSetServicesusbehci"," Group",0x00000000,"System Reserved" HKLM,"SYSTEMCurrentControlSetServicesusbehci"," ImagePath",0x00020000,"system32DRIVERSusbehci.sy s" HKLM,"SYSTEMCurrentControlSetServicesusbehci"," Start",0x00010001,0 HKLM,"SYSTEMCurrentControlSetServicesusbehci"," Type",0x00010001,1 

HKLM,"SYSTEMCurrentControlSetServicesusbhub","D isplayName",0x00000000,"USB2 Enabled Hub" HKLM,"SYSTEMCurrentControlSetServicesusbhub","E rrorControl",0x00010001,1 HKLM,"SYSTEMCurrentControlSetServicesusbhub","G roup",0x00000000,"System Reserved" HKLM,"SYSTEMCurrentControlSetServicesusbhub","I magePath",0x00020000,"system32DRIVERSusbhub.sys" HKLM,"SYSTEMCurrentControlSetServicesusbhub","S tart",0x00010001,0 HKLM,"SYSTEMCurrentControlSetServicesusbhub","T ype",0x00010001,1 

HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," DisplayName",0x00000000,"Microsoft USB Universal Host Controller Miniport Driver" HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," ErrorControl",0x00010001,1 HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," Group",0x00000000,"System Reserved" HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," ImagePath",0x00020000,"system32DRIVERSusbuhci.sy s" HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," Start",0x00010001,0 HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," Type",0x00010001,1 

HKLM,"SYSTEMCurrentControlSetServicesusbohci"," DisplayName",0x00000000,"Microsoft USB Open Host Controller Miniport Driver" HKLM,"SYSTEMCurrentControlSetServicesusbohci"," ErrorControl",0x00010001,1 HKLM,"SYSTEMCurrentControlSetServicesusbohci"," Group",0x00000000,"System Reserved" HKLM,"SYSTEMCurrentControlSetServicesusbohci"," ImagePath",0x00020000,"system32DRIVERSusbohci.sy s" HKLM,"SYSTEMCurrentControlSetServicesusbohci"," Start",0x00010001,0 HKLM,"SYSTEMCurrentControlSetServicesusbohci"," Type",0x00010001,1 

7) Empaquetamos los archivos inf en su formato original IN_ cabarc n USB.IN_ usb.inf cabarc n USBPORT.IN_ usbport.inf 

Page 8: Si WIN EN USB

cabarc n USBSTOR.IN_ usbstor.inf 

ok ya tenemos los IN_ modificados. Ahora solo queda volverlos a poner en el ISO. 

Integrando los IN_ al ISO 

Abrimos la imágen otra vez con WinISO. Vamos a I386 y borramos estos archivos. Le decimos al WinISO que salve los cambios. 

DOSNET.INF TXTSETUP.SIF USB.IN_ USBPORT.IN_ USBSTOR.IN_ Para estar seguros, salimos del WinISO. Lo abrimos otra vez y cargamos la imágen. Vamos a la carpeta I386, seleccionamos "Add Files". y añadimos nuestros archivos modificados que serían : USBBOOT.INF DOSNET.INF TXTSETUP.SIF USB.IN_ USBPORT.IN_ USBSTOR.IN_ Ya está, guardamos el ISO. y terminamos. 

9) Quemar el ISO en CD 

Usa cualquiera, desde nero, alcohol, Burnatonce , el que mas te guste. 

10) Instalando Apagamos el ordenador. Desconectamos todos los discos internos y externos, asi windows no encuentra ninguno y evitamos se cargue/joda el MBR (OJO con esto que nos jode el disco). Vamos al BIOS y quitamos el hdd de la secuencia y dejamos USB en primer lugar, luego CDROM, los demás disabled. Conectamos el super stick USB o disco duro USB en que querramos instalar, directo al puerto, nada de hubs por medio. 

Y Windows deberia instalarse bien, con la excepciones siguientes : 

En la instalación del driver USB te dirá que no está certificado. Esto es normal, nuestros

Page 9: Si WIN EN USB

cambios invalidaron el checksum, y por tanto el driver no está firmado. Le das que "Si" unas cuantas veces y a tomar pcl. Al terminar la instalación la primera vez que arranque el sistema se va a quejar de que no existe archivo de paginación. Lo ignoras de momento, windows funciona bien sin él. Este problema no está aún resuelto asi que estamos buscando una solución... Ya actualizaré la guia cuando la encontremos. De todas formas este no es un error crítico. Una vez que todo esté listo y corriendo, apaga y conecta otra vez tus hdd. 

Salu2 y espero que les sea tan útil como a mi. 

PD. no sé porque no me valida cuando pongo la fuente en el lugar indicado, por lo tanto lo aclaro acá. El material es estraído de: http://www.zafras.wordpress.com Tuve que tildar contenido propio por un error de Taringa

Otra

Que se puede se puede Y ahora MS Windows EN UN PEN DRIVE!!!! USB ! que me contas Microsoft!  Requerimientos : 

Una instalación de Windows Un disco USB2 o un Stick USB2 lo suficientemente grande 4gb. Windows XP CD. WinISO  (o cualquier software que permita edición directa de archivos ISO) Microsoft CAB SDK Software que grabe formato ISO en Cd´s. Este es gratis burnatonce

A modo de leyenda :Letras que están en verde es lo nuevo que se agrega/modifica.Las lineas de comando ms-dos que haya que escribir lo pondré en magenta. Los archivos y lineas (texto) que se eliminan irán en rojo

Sumario:

Vamos a hacer una imágen del CD de WinXP, extraeremos algunos

Page 10: Si WIN EN USB

archivos de la imágen usando el editor de ISO´s. Editaremos estos archivos y los volveremos a meter en el ISO una vez modificados. La imágen resultante la quemamos en otro CD, y ya puede ser usada para instalar directamente en un dispositivo USB. Suena fácil eh. bueno vamos allá. 

1) Soporta tu pc el arranque desde USB?

Usualmente esto es una opción en la secuencia de arranque del BIOS. Si no la ves, actualiza tu BIOS. Si no estás seguro, sigue adelante a ver que pasa... 

2) Descubriendo si tu USB-Drive arranca.

Conecta tu USB drive al ordenador, directamente al puerto, sin Hub. Apaga el pc, desconecta todos los discos duros, pon un CD booteable de XP, comienza a instalar y ve hasta la parte donde seleccionas el disco donde quieres instalar. Si la instalación pasa de la parte donde has de seleccionar la particion. Tu USB sirve para arrancar XP. De lo contrario te dará un error de "Windows no pudo encontrar, su disco, partición, datos, etc.. bla , bla. Esto no es problema, lo único que hay que hacer es formatear el drive USB. Arrancar con el windows normalmente, buscas esta herramienta de HP , y usarla para formatear el stick o disco usb completamente en formato NTFS.

3) Haciendo la imágen del disco de XP.

Fácil. Abre WinISO, vete a Actions-> Make ISO from CDROM, y guarda la imágen de CD. Ya está.

4) Extrayendo los archivos necesarios 

Una vez tenemos la imágen, la cargamos en WinISO. Vamos a la carpeta i386, seleccionamos los archivos siguientes :

TXTSETUP.SIF DOSNET.INF USB.IN_

Page 11: Si WIN EN USB

USBPORT.IN_ USBSTOR.IN_

Vamos a Actions -> Extract y los ponemos en una carpeta aparte para trabajar con ellos.

5) Desempaquetando los archivos IN_

De la linea de comando usamos el Cab SDK.

cabarc x USBSTOR.IN_ cabarc x USB.IN_cabarc USBPORT.IN_ 

y nos quedarían los 3 unpacked :

usb.inf usbport.inf usbstor.inf

ok ahora borramos los .IN_del *.in_ 

6) Editando los archivos. 

Bien este es paso principal. Usaremos un editor de texto simple como Notepad2 .

6-A) TXTSETUP.SIF

Este archivo es cargado en el paso inicial de la instalación. Aqui cambiaremos la forma en que windows trata los dispositivos USB durante el arranque del sistema. Por defecto son tratados como dispositivos de entrada (input devices) durante la instalación. Lo cambiaremos para que los incluya como dispositivos de almacenamiento

Page 12: Si WIN EN USB

(mass storage driver) que por tanto necesita ser cargado antes por el instalador para que funcione la cosa.

Primero, movemos la entrada siguiente desde [InputDevicesSupport.Load] hacia la sección[BootBusExtenders.Load][BootBusExtenders.Load]pci = pci.sysacpi = acpi.sysisapnp = isapnp.sysacpiec = acpiec.sysohci1394 = ohci1394.sysusbehci = usbehci.sysusbohci = usbohci.sysusbuhci = usbuhci.sysusbhub = usbhub.sysusbstor = usbstor.sys

[InputDevicesSupport.Load]usbehci = usbehci.sysusbohci = usbohci.sysusbuhci = usbuhci.sysusbhub = usbhub.sys usbccgp = usbccgp.syshidusb = hidusb.sysserial = serial.sysserenum = serenum.sysusbstor = usbstor.sys

... ahora lo mismo para [BootBusExtenders] y [InputDevicesSupport]

[BootBusExtenders]pci = "PCI-Bustreiber",files.pci,pciacpi = "ACPI Plug & Play-Bustreiber",files.acpi,acpiisapnp = "ISA Plug & Play-Bustreiber",files.isapnp,isapnpacpiec = "Integrierter ACPI-Controllertreiber",files.none,acpiecohci1394 = "IEEE-1394-Bus-OHCI-konformer Anschlusstreiber",files.ohci1394,ohci1394usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehciusbohci = "Open Hostcontroller",files.usbohci,usbohciusbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhciusbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub

Page 13: Si WIN EN USB

usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor

[InputDevicesSupport]usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehciusbohci = "Open Hostcontroller",files.usbohci,usbohciusbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhciusbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub hidusb = "HID-Parser",files.hidusb,hidusbserial = "Treiber f �r seriellen Anschluss",files.none,serialserenum = "Enumerator f �r seriellen Anschluss",files.none,serenumusbstor = "USB-Speicherklassentreiber",files.usbstor,usbstorusbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp

Luego escribimos algunos keys en el registro.Inserta lo siguiente en la sección [HiveInfs.Fresh] :[HiveInfs.Fresh] AddReg = hivedef.inf,AddReg AddReg = hivesys.inf,AddRegAddReg = hivesft.inf,AddRegAddReg = hivecls.inf,AddRegAddReg = hiveusd.inf,AddRegAddReg = dmreg.inf,DM.AddRegAddReg = usbboot.inf,usbservices 

y en [SourceDisksFiles] también

[SourceDisksFiles]usbboot.inf = 1,,,,,,_x,3,,3bootvid.dll = 1,,,,,,3_,2,0,0,,1,2kdcom.dll = 1,,,,,,3_,2,0,0,,1,2

Finalmente, salvamos y cerramos TXTSETUP.SIF. ya terminamos con este.

6-B) DOSNET.INF 

Abrimos DOSNET.INF , cambiamos la sección [Files] que nos quede asi:

Page 14: Si WIN EN USB

[Files]d1,usbboot.infd1,_default.pifd1,12520437.cpxd1,12520850.cpx 

....

6-C) usb.inf 

Cambiamos lo que está en verde en ambas secciones [StandardHub.AddService] y en [CommonClassParent.AddService]

[StandardHub.AddService]DisplayName = %StandardHub.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVERStartType = 0 ; SERVICE_DEMAND_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%\usbhub.sysLoadOrderGroup = Boot Bus Extender

[CommonClassParent.AddService]DisplayName = %GenericParent.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVERStartType = 0 ; SERVICE_DEMAND_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%\usbccgp.sysLoadOrderGroup = Boot Bus Extender6-D) usbport.infCambiamos en la sección [EHCI.AddService], [OHCI.AddService] , [UHCI.AddService] y en [ROOTHUB.AddService] :

[EHCI.AddService]DisplayName = %EHCIMP.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVERStartType = 0 ; SERVICE_DEMAND_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%\usbehci.sysLoadOrderGroup = Boot Bus Extender

Page 15: Si WIN EN USB

[OHCI.AddService]DisplayName = %OHCIMP.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVERStartType = 0 ; SERVICE_DEMAND_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%\usbohci.sysLoadOrderGroup = Boot Bus Extender

[UHCI.AddService]DisplayName = %UHCIMP.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVERStartType = 0 ; SERVICE_DEMAND_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%\usbuhci.sysLoadOrderGroup = Boot Bus Extender

[ROOTHUB.AddService]DisplayName = %ROOTHUB.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVERStartType = 0 ; SERVICE_DEMAND_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%\usbhub.sysLoadOrderGroup = Boot Bus Extender

6-E) usbstor.inf

Cambiamos / Añadimos en la sección [USBSTOR.AddService]

[USBSTOR.AddService]DisplayName = %USBSTOR.SvcDesc%ServiceType = 1StartType = 0Tag = 3ErrorControl = 1ServiceBinary = %12%\USBSTOR.SYSLoadOrderGroup = Boot Bus Extender

Page 16: Si WIN EN USB

6-F) Nuevo archivo: USBBOOT.INF

Creamos un archivo nuevo llamado USBBOOT.INF en el mismo directorio donde hemos cambiado los otros archivos y le pegamos esto dentro :

[usbservices]

HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x00000000,"USB Mass Storage Driver"HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ErrorControl",0x00010001,1HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Group",0x00000000,"System Reserved"HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ImagePath",0x00020000,"system32\DRIVERS\USBSTOR.SYS"HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Start",0x00010001,0HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Type",0x00010001,1

HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","DisplayName",0x00000000,"USB 2.0 Enhanced Host Controller Miniport Driver"HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ErrorControl",0x00010001,1HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Group",0x00000000,"System Reserved"HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ImagePath",0x00020000,"system32\DRIVERS\usbehci.sys"HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Start",0x00010001,0HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Type",0x00010001,1

HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","DisplayName",0x00000000,"USB2 Enabled Hub"HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ErrorControl",0x00010001,1HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Group",0x00000000,"System Reserved"HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ImagePath",0x00020000,"system32\DRIVERS\usbhub.sys"

Page 17: Si WIN EN USB

HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Start",0x00010001,0HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Type",0x00010001,1

HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","DisplayName",0x00000000,"Microsoft USB Universal Host Controller Miniport Driver"HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ErrorControl",0x00010001,1HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Group",0x00000000,"System Reserved"HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ImagePath",0x00020000,"system32\DRIVERS\usbuhci.sys"HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Start",0x00010001,0HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Type",0x00010001,1

HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","DisplayName",0x00000000,"Microsoft USB Open Host Controller Miniport Driver"HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ErrorControl",0x00010001,1HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Group",0x00000000,"System Reserved"HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ImagePath",0x00020000,"system32\DRIVERS\usbohci.sys"HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Start",0x00010001,0HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Type",0x00010001,1

7) Empaquetamos los archivos inf en su formato original IN_cabarc n USB.IN_ usb.infcabarc n USBPORT.IN_ usbport.inf cabarc n USBSTOR.IN_ usbstor.inf 

ok ya tenemos los IN_ modificados. Ahora solo queda volverlos a poner en el ISO.

Page 18: Si WIN EN USB

8) Integrando los IN_ al ISO 

Abrimos la imágen otra vez con WinISO. Vamos a I386 y borramos estos archivos. Le decimos al WinISO que salve los cambios.

DOSNET.INF TXTSETUP.SIF USB.IN_ USBPORT.IN_ USBSTOR.IN_

Para estar seguros, salimos del WinISO. Lo abrimos otra vez y cargamos la imágen. Vamos a la carpeta I386, seleccionamos "Add Files". y añadimos nuestros archivos modificados que serían :

USBBOOT.INF DOSNET.INF TXTSETUP.SIF USB.IN_ USBPORT.IN_ USBSTOR.IN_

Ya está, guardamos el ISO. y terminamos.

9) Quemar el ISO en CD

Usa cualquiera, desde nero, alcohol, Burnatonce , el que mas te guste.

10) InstalandoApagamos el ordenador. Desconectamos todos los discos internos y externos, asi windows no encuentra ninguno y evitamos se cargue/joda el MBR (OJO con esto que nos jode el disco). Vamos al BIOS y quitamos el hdd de la secuencia y dejamos USB en primer lugar, luego CDROM, los demás disabled. Conectamos el super stick USB o disco duro USB en que querramos instalar, directo al puerto, nada de hubs por medio.

Page 19: Si WIN EN USB

Y Windows deberia instalarse bien, con la excepciones siguientes :

En la instalación del driver USB te dirá que no está certificado. Esto es normal, nuestros cambios invalidaron el checksum, y por tanto el driver no está firmado. Le das que "Si" unas cuantas veces y a tomar pcl.

Al terminar la instalación la primera vez que arranque el sistema se va a quejar de que no existe archivo de paginación. Lo ignoras de momento, windows funciona bien sin el. Este problema no está aún resuelto asi que estamos buscando una solución... Ya actualizaré la guia cuando la encontremos. De todas formas este no es un error crítico.

Una vez que todo esté listo y corriendo, apaga y conecta otra vez tus hdd.

Aclaro esta solucion no es correcta de utilizar dado que estamos modificando codigos del sistema operativos, si realmente te interesa probar el XP, 200X, o Vista en un PEN o Disco USB lo puedes hacer con toda confianza que funciona.

 

Gracias a todos los que me llamaron y me insistieron que no me rinda con este proyecto Caso cerrado, Windows si soporta Boot por USB.

 

Salu2