viernes, 11 de septiembre de 2009

Cómo preparar un XP instalable desde USB en 3 pasos / Destripando WinSetupFromUSB



Los muchachos de MSFN y Boot-Land nos simplifican la vida poniendo en una gui sencilla de usar todo el conocimiento de sus foros sobre instalacion de xp desde pendrive, bla, bla, bla, etc.

Y que hay que hacer?

1) Bájese el WinSetupFromUSB desde acá e instálelo en su máquina.
2) Dígale al programita dónde está su cd de instalacion de windows y su pendrive/disco externo. Apriete GO.


3) Mientras espera, ponga un hielo grande en un vaso. Agregue una medida de Fernet Branca y cuatro o cinco de Coca Cola. Tómeselo y disfrute mientras espera.

Listo!

Y basta de intro y how-to. Pasemos a lo que nos interesa: Cómo lo hacen?

Básicamente, WinSetupFromUSB es una interfaz que maneja otras herramientas que ya conocemos. Espiando en su directorio de instalacion encontramos cosas que ya vimos (y llevamos en el pendrive por las dudas): grub4dos, syslinux, pe2usb, HP format tool, y otras que conocimos por bootland como RMprepUSB. También hay scripts y programas para preparar la instalación, y por lo que veo algún driver que reemplaza al que debíamos conseguir del SP1 del windows server 2003.

Así que cuando preparamos la instalación el programa se encarga de modificar lo necesario y copiar todo al pendrive, y además instala un boot basado en grub4dos, que divide la instalación en dos partes, arrancando la primera desde setupldr.bin (as usual) y la segunda desde el mismo pendrive corriendo ntldr, como vemos en su entrada del menú:

title First part of Windows XP Professional setup
root (hd0,0)
chainloader (hd0,0)/$WIN_NT$.~BT/SETUPLDR.BIN
savedefault 1

title Second part of Windows XP Professional setup
root (hd0,0)
chainloader (hd0,0)/NTLDR
savedefault

Todo muy lindo hasta acá. Ahora las malas noticias: La instalación sólo funciona tal como viene en mothers nuevas (que por lo menos reconozcan el pen como (hd0,0) y no como (fd0) ) y si bien dice soportar desatendidos, es necesario que hayan sido armados dejando habilitada la opcion para instalar desde DOS (que no está en nuestros desatendidos favoritos, como el winchiquito o las versiones updateadas del UE7). Como trampa, es posible engañar al instalador para que nos permita crear el usb copiando de un cd de windows original los archivos faltantes (todos los que empiezan con "winnt"), pero aun si esto pudiera hacernos pasar de la pantalla de carga de drivers (que yo no pasé) de todos modos creo que sería un dolor de cabeza: los desatendidos mas populares son muy dependientes del cd. Quizás los técnicos debamos esperar a que, ahora que existe la herramienta, algun amigo como BJ se ponga a armar el paquete con los scripts actualizados para pendrive.

Y entonces... por que tanto entusiasmo?

Bueno; para mi lo mejor que tiene este programa es algo que ya alabé en el instalador de Geexbox, y antes en unetbootin: por medio de una interfaz intuitiva, nos deja con configuraciones que funcionan para hacer las cosas que queremos hacer. Una mirada al menu.lst, por ejemplo, nos revela el modo más práctico de bootear desde una imagen iso que tenemos en el pen:

title Start AcronisMedia.iso from partition 0
root (hd0,0)
map /AcronisMedia.iso (0xff) || map --mem /AcronisMedia.iso (0xff)
map --hook
root (0xff)
configfile /grub4dos.lst || chainloader (0xff)

Esto es para mi como tener a Jaclaz (famoso en los foros que mas me interesan, y primero en la lista de agradecimientos) dictándome los comandos!
Vemos que mapean la iso a la dirección (0xff), y en la misma línea hacen lo mismo pero montándola en memoria (supongo que esa doble barra significa que hacen una cosa o la otra, segun cual funcione. Quizas sea mucho suponer). Después cambian la raiz a la iso montada, y al final se tiran a cargar bien una configfile de grub o directamente intentan cargar el bootsector con chainloader. Esta segunda opción es la que funciona con esta iso en particular (el cd de recuperacion de Acronis True Image). También funca para el silverdisk, y se me hace que entre las dos cubren gran parte de los booteables. Por suspuesto, también podemos hurgar un poco en la iso y escribir la linea correcta, que para algo venimos practicando con grub4dos!

Y no los molesto más. Si les interesa comentar lo que pudieron hacer arrancar (y cómo) los voy agregando al post. Por mi parte, pienso probar hirens, puppy y slitaz para empezar, ni bien tenga algo de tiempo para algo de diversion geek.

Mientras tanto, disfruten!
(Y si no pueden invitar, al menos cuenten).

7 comentarios:

CoskiBukowski dijo...

yo algun dia me voy a comprar un pendrive de 100 gigas, y te lo voy a llevar para que me hagas que bootee desde un win3.1 hasta el SO del enterprise o del modulo lunar de la NASA.

Abrazo

A ver cuando nos vemos finalmente.... ;)

ReiRok dijo...

Hola muchachos, paso a dar el presente en estos temas.
Otra cosa, hay una utilidad nueva que les va a gustar.
Bootice: An utility to fix or change the boot record. ( Boot Land )
Link, http://www.boot-land.net/forums/index.php?noref=1&showtopic=8986

Saludos Reirok.

486 dijo...

Gracias ReiRok! Tiene muy buena pinta!

Fernando Pio dijo...

Ciao!

De repente esta otra aplicación sirve también
UNetbootin

http://edrossuse.blogspot.com/search/label/UNetbootin

eWeb dijo...

Una consulta, cuando te refieres a placas nuevas a partir de que año estamos hablando?

486 dijo...

Fernando: ya hablamos de UnetBootIn, es una aplicacion similar, pero trabaja con syslinux. El tema es que syslinux no puede (o al menos no sin trabajo posterior) arrancar el cargador de la instalacion (setupldr) o el de windows (ntldr), cosa que grub4dos si hace.
eWeb: casi todas las mothers que tienen ddr2 o ddr3 pueden bootear bien desde pendrive. Si tenes oportunidad de probarlo, comentanos como te fue.

Anónimo dijo...

Quisiera q' me ayuden con una Acer Aspire One, en la q' ya probé miles de métodos y nada me funcionó.
Tenía instalado Linux, pero a pedido de un amigo se lo desinstalé coni ntenciones de instalarle XP y nada y nada y nada. Y acá la tengo sin poder usar desde hace tiempo.
Cualquier ayuda será bienvenida, les puedo dar casi cualquier dato de la notebook (mientras sepa cómo)

Joaquín.