Instalación de controladores de Windows desde un recurso compartido de red
Uso de TBOSDT incluido en el disco de arranque de Image for Linux

Nota: Este artículo está obsoleto. Utilice en su lugar el script OSDTOOL.TBS. Para ver un vídeo de ejemplo, haga clic aquí.

Descripción general

Este tutorial explica cómo instalar un controlador de almacenamiento de Windows desde un recurso compartido de red utilizando la versión Linux del programa TBOSDT desde el disco de arranque de Image for Linux (IFL). El disco de arranque de IFL se puede crear desde Windows o Linux, y puede ser un CD/DVD, una unidad flash USB o un conjunto de archivos de arranque para arranque de red PXE (solo desde Linux).

Además de este tutorial, consulte el Ejemplo de aplicación n.º 2 cerca del final del manual de TBOSDT (tbosdt.pdf), donde encontrará una descripción del proceso general.

Punto de partida

Un escenario típico para utilizar el procedimiento siguiente se daría cuando una instalación existente de Windows (de la que existe una imagen) necesita restaurarse en un sistema en el que el controlador de almacenamiento no es compatible con el controlador de almacenamiento usado en el sistema original. Estas condiciones pueden darse cuando se ha sustituido la placa base o el sistema completo. Como el sistema de destino tiene un controlador de almacenamiento masivo diferente (por ejemplo, un controlador SATA en lugar de un controlador IDE), la imagen restaurada no arrancará porque no incluye el controlador correcto. Aquí es donde entra TBOSDT.

La instalación de un controlador de Windows mediante TBOSDT se realiza en dos etapas y puede llevarse a cabo con Windows inicialmente en un estado no arrancable . La primera etapa (Etapa 1) tiene lugar cuando se arranca desde el disco de arranque de IFL y se ejecuta el script de la Etapa 1 de TBOSDT. Esto instala el controlador hasta un punto en el que la partición de Windows puede arrancar. También prepara la partición de Windows para ejecutar automáticamente el script de la Etapa 2 de TBOSDT la próxima vez que se arranque desde ella. El script de la Etapa 2 completa entonces la instalación del controlador.

El punto de partida del procedimiento descrito a continuación será una imagen de una partición de Windows XP que se ha restaurado en la unidad de arranque (HD0) del sistema de destino. Como el controlador del nuevo controlador de disco duro aún no se ha instalado, la partición de Windows no arrancará en el sistema de destino.

Al restaurar la imagen de Windows, es necesario asegurarse de que la partición restaurada esté marcada como activa y de que se haya instalado el código MBR estándar. Al restaurar una sola partición con cualquiera de los productos de imagen de TeraByte Unlimited, se pueden usar las opciones de restauración Establecer activa y Escribir código MBR estándar para garantizar esas condiciones. No son necesarias ni están disponibles al restaurar una unidad completa.

Archivos del controlador

En general, para instalar cualquier controlador de Windows con TBOSDT, necesitará los archivos individuales del controlador (normalmente un archivo INF, CAT y SYS). Lo ideal es disponer de un disquete (u otro medio) suministrado con el hardware que contenga los archivos del controlador . Si no es así, deberá obtenerlos del fabricante del hardware . De nuevo, los archivos del controlador deben estar en forma de archivos individuales o poder extraerse de un archivo CAB.

Este tutorial utilizará el ejemplo específico de instalar el controlador del controlador Intel SATA AHCI en una imagen restaurada de Windows XP. Este es el controlador que la mayoría de los usuarios necesita para que Windows XP funcione en un sistema SATA nuevo. Para localizar ese controlador, consulte el tutorial Creación de un disco de Windows XP con Slipstream usando nLite.

Requisitos de software

Image for Linux (IFL)

TeraByte OS Deployment Tool Suite (TBOSDTS)

Requisitos del sistema

Un recurso compartido de red de Windows o Samba al que se pueda acceder desde el sistema de destino con permisos de lectura/escritura a través de una conexión de red cableada.

Si utiliza una unidad flash USB como medio de arranque, el sistema de destino debe admitir el arranque desde una unidad USB.

Paso 1: Descargar y extraer TBOSDTS

Los scripts de ejemplo de TBOSDT (drvins_1.run y drvins_2.run), así como el la versión Windows de TBOSDT (tbosdtw.exe) serán necesarios para llevar a cabo la instalación del controlador. Estos archivos se pueden obtener extrayendo el archivo zip de TBOSDTS (tbosdts_en.zip o tbosdts_pro_en.zip), de modo que los archivos necesarios puedan copiarse al recurso compartido de red.

Tenga en cuenta que los programas y archivos de soporte reales de TBOSDTS están contenidos en el archivo tbosdts.zip, que es un archivo zip secundario dentro del archivo zip descargado. Para extraer tbosdts.zip, necesitará la contraseña incluida en readme.txt, que se encontrará dentro de el archivo zip descargado.

Una vez extraído tbosdts.zip, estarán disponibles los siguientes archivos y directorios:



Paso 2: Copiar los archivos necesarios al recurso compartido de red

Se recomienda crear una carpeta/directorio independiente en el recurso compartido de red para contener los archivos necesarios para instalar el controlador. Este tutorial utilizará un directorio llamado 'tbosdtfiles', ubicado en la raíz de un recurso compartido llamado 'demo', en un servidor llamado 'ubuntu810'.

Los archivos que deben copiarse al recurso compartido son los que se enumeran a continuación:

drvin_1.run y drvins_2.run: Copie estos 2 archivos desde el directorio tbosdts/scripts. Estos son los scripts de la Etapa 1 y la Etapa 2 de TBOSDT, y estos archivos se editarán en el Paso 6.

tbosdtw.exe (versión Windows): Copie tbosdtw.exe desde el directorio tbosdts/win. Este archivo es la versión Windows de TBOSDT.

iaahci.inf, iaahci.cat, iastor.sys: Estos son los archivos específicos del controlador necesarios para instalar el controlador Intel SATA utilizado en este ejemplo. Estos archivos se llamarán de forma diferente para otros controladores.

Después de copiar todos los archivos necesarios, el contenido del directorio en el recurso compartido de red debería ser como se muestra a continuación:


Paso 3: Crear el disco de arranque de IFL

El disco de arranque de IFL se puede crear desde Windows o Linux como CD/DVD o como unidad flash USB. Desde Linux, también existe la opción de crear el disco de arranque como un conjunto de archivos de arranque para arranque de red PXE. No se requiere un disco de arranque personalizado (que opcionalmente puede crearse desde Linux).

Para crear el disco de arranque de IFL desde Windows, consulte el tutorial de TeraByte Unlimited en el enlace siguiente:
Image for Linux: lo primero de todo: crear un disco de arranque

Para crear el disco de arranque de IFL desde Linux, consulte el tutorial de TeraByte Unlimited en el enlace siguiente:
Cómo crear un medio de arranque de IFL desde una distribución Linux

Paso 4: Arrancar desde el disco de arranque de IFL y montar el recurso compartido de red

Arranque el sistema de destino desde el disco de arranque de IFL (CD/DVD o unidad flash USB). Para arrancar desde una unidad flash USB, el BIOS del sistema debe configurarse para arrancar desde ese dispositivo. Algunos sistemas pueden tener una tecla que pulsar al arrancar que mostrará un menú de dispositivos desde los que arrancar, en lugar de tener que entrar en la configuración del BIOS.

Una vez completado el arranque, estará en el menú principal del disco de arranque de IFL (pantalla de bienvenida). Resalte el elemento “Mount/Unmount Samba/Windows shares” como se muestra a continuación y, a continuación, pulse :



El elemento de menú “Mount/Unmount” detectará los servidores Windows/Samba disponibles y, a continuación, los mostrará en una pantalla similar a la captura de abajo. En esa pantalla, resalte el servidor que contiene los archivos (UBUNTU810 en este ejemplo) y, a continuación, pulse :



Después de seleccionar el servidor, escriba el nombre de usuario del servidor/recurso compartido al que necesita acceder y, a continuación, pulse . En este ejemplo, el nombre de usuario es 'demo':



En la siguiente pantalla, introduzca la contraseña y, a continuación, pulse de nuevo:



La siguiente pantalla mostrará los recursos compartidos disponibles para montar en el servidor. Resalte el recurso compartido al que necesita acceder (demo en este ejemplo) y luego pulse .



El recurso compartido debería estar ya montado, y esto se indicará porque el estado de montaje cambiará de “UNMOUNTED” a “MOUNTED:(/net1)” como se muestra a continuación:



Si el recurso compartido no se monta (o no aparece en el menú de recursos compartidos), normalmente se deberá a que se ha introducido un usuario/contraseña incorrectos. En ese caso, puede salir al menú de servidores, seleccionar el servidor y volver a intentar introducir el nombre de usuario y la contraseña.

El (/net1) entre paréntesis es el punto de montaje del recurso compartido de red . El punto de montaje es el directorio del sistema de archivos local donde se puede acceder al contenido del recurso compartido. El punto de montaje se utilizará cuando se edite el script de la Etapa 1 (drvins-1.run) en el Paso 6. El punto de montaje siempre será /net1, a menos que se haya montado primero otro recurso compartido de red .

Seleccione “EXIT MENU” para volver a la pantalla del servidor. En esta pantalla debería ver ahora un valor de 1 en “Total shares currently mounted”, como se muestra a continuación:



Seleccione “EXIT MENU” para volver al menú principal del disco de arranque. En ese menú, resalte “Exit to the Linux command prompt” y, a continuación, pulse :



Esa selección del menú le dejará en un símbolo del sistema de Linux. Para verificar aún más que el recurso compartido está montado y que ahora puede acceder a los archivos del recurso compartido, ejecute el comando 'ls /net1/tbosdtfiles'. Ese comando listará los archivos copiados previamente al directorio tbosdtfiles en el Paso 2 anterior y debería dar como resultado la salida que se muestra a continuación:



Los archivos copiados al recurso compartido en el Paso 2 ahora se pueden ver en el listado del directorio tbosdtfiles en el recurso compartido montado.

Paso 5: Determinar el ID de partición de la partición de destino

Este paso consiste en determinar el ID de partición de la partición de Windows de destino. Este valor se utiliza en el paso 1 del script de la Etapa 1 (drvins_1.run) para garantizar que se monta la partición correcta durante la instalación del controlador. El script de la Etapa 1 se editará en el Paso 6 a continuación, y el valor determinado aquí será necesario entonces.

Para determinar el ID de partición, ejecute el comando 'tbosdt' desde el símbolo del sistema para iniciar el programa TBOSDT en modo interactivo. A continuación, en el símbolo del sistema de TBOSDT, ejecute el comando 'list hd 0' para listar las particiones de la unidad HD0. Eso dará como resultado una salida similar a la siguiente:



En este caso, solo hay una partición en la unidad y tiene un ID de partición de 1, que se muestra entre paréntesis arriba como (01) en la columna ID. Este valor coincide con el ID de partición en la copia predeterminada de drvins_1.run. Si el ID de partición es distinto de (01), habrá que cambiar el valor del ID de partición en drvins_1.run en el Paso 6.

Tenga en cuenta que el ID de partición es un número hexadecimal y debe introducirse en notación hexadecimal en drvins_1.run. Por ejemplo, si el ID de partición se muestra como (0B) en TBOSDT, ese valor se introduciría como 0xB en drvins_1.run (se puede omitir el cero inicial). Un ID de partición de (2C) se introduciría como 0x2C.

Escriba 'exit' para salir del programa TBOSDT y volver al símbolo del sistema de Linux.

Paso 6: Editar los scripts de TBOSDT en el recurso compartido de red

Este paso consiste en realizar algunos cambios necesarios en los scripts predeterminados de TBOSDT (drvins_1.run y drvins_2.run) que se copiaron al recurso compartido de red en el Paso 2 anterior. Los archivos se editarán usando el editor de texto 'nano' incluido en el disco de arranque de IFL.

Para editar drvins_1.run, inicie el editor de texto nano con el comando 'nano /net1/tbosdtfiles/drvins_1.run', como se muestra en la captura de pantalla siguiente:



Para drvins_1.run, se requieren los siguientes cambios para este ejemplo:
1. Quitar el comentario de todas las líneas que comienzan con un solo “;” excepto las 3 líneas del paso 3b (16 líneas)
2. En el paso 1, cambiar el ID de partición de destino al valor determinado en el Paso 5 anterior (si es necesario)
3. En el paso 3, ajustar la ruta para copiar los archivos desde el recurso compartido de red (3 líneas)
4. En el paso 4, ajustar la ruta para copiar los archivos desde el recurso compartido de red (2 líneas)

La captura de pantalla siguiente muestra drvins_1.run en el editor de texto nano después de realizar los cambios enumerados arriba. Los cambios están rodeados y numerados para que correspondan con la lista.



Para guardar los cambios en el archivo, utilice la combinación de teclas (WriteOut) y, a continuación, pulse .

Para salir del editor nano, pulse .


Para editar drvins_2.run, inicie el editor de texto nano con el comando 'nano /net1/tbosdtfiles/drvins_2.run'.

Para drvins_2.run, se requiere el siguiente cambio para este ejemplo:
1. En el paso 1, quitar el comentario de la línea del comando 'add inf' (1 línea)

La captura de pantalla siguiente muestra drvins_2.run en el editor de texto nano después de editarlo, con el cambio rodeado:



Para guardar los cambios en el archivo, utilice la combinación de teclas (WriteOut) y, a continuación, pulse .

Para salir del editor nano, pulse .

Ahora que se han editado ambos scripts de TBOSDT, puede comenzar la instalación real del controlador.

Paso 7: Ejecutar el script de la Etapa 1 (drvins_1.run)

Para ejecutar el script de la Etapa 1 (drvins_1.run), ejecute el siguiente comando desde el símbolo del sistema de Linux:

tbosdt /net1/tbosdtfiles/drvins_1.run

Para el controlador Intel SATA que se instala en este ejemplo, la salida del script tendrá el siguiente aspecto:



Cuando se ejecute el script de la Etapa 1, observe la salida de TBOSDT en pantalla y esté atento a cualquier mensaje de error. Normalmente, TBOSDT finalizará la ejecución del script cuando encuentre una condición de error, de modo que cualquier mensaje de error seguirá siendo visible en la pantalla, aunque parte de la salida pueda desplazarse fuera de la vista. Si la salida que desea ver se desplaza fuera de la pantalla, puede desplazarse hacia arriba usando una o más veces, o bien la salida puede redirigirse a un archivo y luego verse una página cada vez con el comando 'more' de la siguiente manera:

tbosdt /net1/tbosdtfiles/drvins_1.run > nombredearchivo
more nombredearchivo

Para fines de resolución de problemas, también puede ser útil seleccionar el modo de vídeo de frame buffer (opción 2 en el menú de arranque) al arrancar el disco de arranque de IFL . Esto hará que se pueda ver más texto sin desplazamiento.

Las causas habituales de errores incluyen:

1. Intentar montar la unidad/partición incorrecta (paso 1 en drvins_1.run)
2. No editar uno o más comandos con los valores correctos en drvins_1.run (consulte el Paso 6)
3. Errores de sintaxis y/o de escritura en drvins_1.run

El script de la Etapa 1 debe ejecutarse sin errores antes de que se pueda esperar que el arranque desde la partición de destino sea correcto.

Paso 8: Arrancar la partición de destino para ejecutar la Etapa 2

Una vez que el script de la Etapa 1 se haya ejecutado correctamente en el Paso 7, ahora debería ser posible arrancar desde la partición de destino. Se recomienda la siguiente secuencia de pasos:

1. Arranque el sistema normalmente desde la partición de destino. En el primer arranque, aparecerá una ventana de terminal y se ejecutará el script de la Etapa 2 (drvins_2.run). Tras un retraso típico de unos pocos segundos, el sistema debería reiniciarse automáticamente. (Esto solo ocurrirá una vez, en el primer arranque).

2. Tras el reinicio, arranque Windows en Modo seguro, tal como se describe en el Paso 3 a continuación. El uso del Modo seguro permite que Windows detecte el nuevo hardware sin bloquearse y/o sin otros problemas que pueden surgir debido a ciertos tipos de hardware nuevo, en particular adaptadores de vídeo.

3. Para entrar en el Modo seguro de Windows XP: Mientras el equipo está arrancando (justo después del POST), pulse repetidamente la “tecla F8”, lo que debería mostrar el “Menú de opciones avanzadas de Windows”. Use las teclas de flecha para desplazarse hasta “Modo seguro” y pulse la tecla Intro.

Si no puede arrancar en modo seguro, puede deberse a que también sea necesario sustituir la HAL. Aunque los detalles quedan fuera del alcance de este artículo, básicamente se hace copiando el archivo correcto en \windows\system32\hal.dll. Los archivos HAL disponibles (hasta Win2003) son HAL.DLL, HALAPIC.DLL, HALMPS.DLL, HALACPI.DLL, HALAACPI.DLL, HALMACPI.DLL. El archivo más común necesario para sistemas modernos es HALACPI.DLL, HALAACPI.DLL o HALMACPI.DLL, que se puede encontrar en la carpeta \windows\servicepackfiles\i386. Puede usar TBOSDT para montar la partición y copiar el archivo necesario.

4. Una vez que esté en funcionamiento en Modo seguro, permita que Windows complete la detección del nuevo hardware.

5. Reinicie cuando se le solicite.

6. Tras el reinicio, permita que Windows arranque normalmente. La instalación del controlador debería estar ya completa.

Tenga en cuenta que WPA (Windows Product Activation) puede activarse debido al nuevo hardware detectado y, si es así, será necesario reactivar Windows.