Windows NT virtualizado con Hyper-V

Si anteriormente vimos la posibilidad de virtualizar un entorno antiguo con VMware, tambien es posible realizarlo con tecnología Hyper-v de Microsoft. Debemos tener en cuenta que no hay soporte para ratón desde la consola de Hyper-v, deberemos instalar acceso remoto adicional (UltraVNC por ejemplo).

Para la configuración de la conectividad de red, deberemos añadir un "Adaptador de red heredado" e instalar los drivers de red para la tarjeta "Intel 21140 based 10/100 mbps Ethernet Controller" indicando la ruta del driver (habitualmente "D:\i386\WNT40\NDIS40"). Si no disponemos en la máquina virtual de los archivos necesarios, podemos crear un fichero ISO con lo que necesitemos para insertarlo como unidad de CD desde Hyper-v

Una vez tengamos conectividad de red y acceso remoto, podemos facilitar la utilización instalando un driver de pantalla Universal VESA Windows NT para ampliar número de colores y resolución


Virtualización de THEOS Corona

Si lo más habitual es encontrar entornos Windows, Unix/Minix/BSD/Linux/Mac OS X... de vez en cuando te encuentras son sorpresas, como THEOS: The Operating System a camino entre MS-DOS y UNIX.

 

Un SO asociado a un dongle de seguridad con número de serie, los más antiguos con llave en puerto paralelo LPT, nació como base de programas para entornos empresariales en los que la prioridad era la fiabilidad y robustez... actualmente dada las pocas actualizaciones, funciones, desarrolladores... sería un opción poco recomendable...

Nos encontramos con un equipo antiguo, más de 15 años... muy antiguo que con sus achaques sigue funcionando, los requisitos no son nada de otro mundo, se contenta con 512 MB de RAM, disco IDE de 40 GB, procesador AMD Sempron... poco más que decir...

En caso de acabar necesitando instalar desde cero, cada uno de los dongles lleva asociado un código de autorizacion único, si necesitas reinstalar debes tenerlo o solicitarlo al distribuidor.

Casi cualquier equipo de hoy en día será capaz de virtualizar un equipo con estos requisitos, en nuestro caso la versión de THEOS es la más antigua de todas y con puerto paralelo para la mochila de seguridad, necesitaremos virtualizarlo con VMWARE (Hyper-V no permite LPT). Cualquier fallo en el hardware implica un soporte limitado debido a la escasa lista de compatibilidades.

Dado que tenemos nuestro equipo en funcionamiento vamos a ir por pasos:

  1. Apagamos correctamente THEOS Corona mediante el comando shutdown
  2. Conectamos el disco (IDE en nuestro caso) a otro equipo, con un adaptador a USB por ejemplo, es importante no dar formato al disco ni intentar montar las unidades, aunque THEOS tiene soporte para otros formatos, seguramente utilice el suyo propio en la instalación (THEOS/LFS).
  3. Realizamos una clonación/imagen completa del disco, por ejemplo con Macrium, y generamos un fichero con todo el contenido.
  4. Configuramos una máquina virtual con 1 procesador y los mismos 512 MB de RAM en este caso, repasamos el archivos de configuración para asegurarnos la compatibilidad de la tarjeta de red, algunas aplicaciones podrían tener relacionada la dirección física de red, por lo que se recomienda utilizar la misma MAC que el sistema original
    ethernet0.virtualDev = "e1000"
    ethernet0.generatedAddress = "00:0A:BC:CD:EF:GH"
    ...
    parallel0.bidirectional = "FALSE"
    parallel0.fileName = "LPT1"
    parallel0.present = "TRUE"
  5. Con el disco virtual en blanco configurado, añadimos una imagen ISO de Hirens y arrancamos desde el CD la utilidad de Macrium para restaurar el disco tal como estaba en la máquina. Es posible que debas configurar más RAM para el arranque completo de Hirens (2 GB) y luego volver a 512 MB una vez restaurado
  6. Conectamos el dongle LPT y arrancamos, si todo ha ido bien tendremos virtualizado el equipo. No es necesario instalar drivers del dongle LPT en la máquina host.

Otros comandos que serán de utilidad en el proceso:

  • sh ospl: muestra la versión de THEOS, aunque aparece durante el arranque
  • setup net: configuración de la tarjeta de red, será necesario eliminar la antigua y añadir la nueva virtualizada, requiere usuario SYSTEM con permisos
  • show, muestra información básica del sistema
  • show serial, muestra el número de serie del dongle de seguridad conectado
  • disk x (boot, donde "X" es la unidad de disco a reparar el arranque
  • disk s, muestra información de los discos del sistema

Algunos ponen en valor que aplicaciones de hace 20 años sigan funcionando sin incidentes, las funciones y opciones son también de hace 20 años, THEOS no ha evolucionado con la industria, "pero funciona".

 

Enlaces de interés:

Combinar archivos AVHDX en un único VHDX

Con equipos virtualizados mediante Hyper-V es posible realizar instántaneas / puntos de control / checkpoints de un estado completo de la máquina virtual. Esta posiblidad nos permite jugar en el tiempo con el estado de la máquina, realizar copias de seguridad, diferenciales... todas las ventajas de la virtualización.

En ocaciones es posible que el espacio ocupado por todos estos movimientos empieza a quedar pequeño, pese a eliminar puntos de control obsoletos no siempre se realiza la acción correspondiente en los ficheros de disco duro, creandose archivos diferenciales:

Lo primero que buscamos es el disco que queremos combinar, para ello desde la configuración de la máquina virtual tenemos que apunta a un fichero AVHDX en lugar de un VHDX pese a no tener puntos de control en activo:

 

Este es el último punto de control que utiliza, a partir de aquí debemos navegar pulsando en el botón "Inspeccionar" para conocer el siguiente fichero padre, de esta manera tendremos el árbol correcto de los discos. Es importante NO UTILIZAR la fecha de modificación de los ficheros AVHDX para establecer el orden de combinación, dependerá del uso que hayamos tenido del árbol de puntos de control que coincida o no con el real:

Una vez aclarado el orden, dependiendo de la versión de Hyper-V podremos hacerlos con la máquina encendida o apagada. Buscaremos la opción de "Editar disco...". Seleccionando desde el primer nodo (el que apunta directamente nuestra máquina virtual) y los siguientes EN ORDEN:

La opción de "Combinar" solo nos aparece al seleccionar un archivo diferencial AVHDX, a partir de entonces seguiremos la misma operación de manera secuencial sobre el resto de archivos.

 

Una vez finalizado el proceso, recuerda apuntar al nuevo último punto de combinación que hayas dejado.

Revisa la configuración de replicación si esta activada con otra máquina antes de proceder con la combinación de discos.

Permisos sobre discos VHDX con HyperV

En ocasiones después de mover o migrar datos entre servidores, de maneras no muy ortodoxas, aparece error sobre el acceso a los discos VHD o VHDX desde la consola de Hyper-V:

IDE/ATAPI Account does not have sufficiet privilege to opn attachment 'X:\RUTA\archivo.VHDX'. Error: "General Access denied error"
Microsoft Emulated IDE Controller
Error 0x8007005

 

 

Pulsando sobre mostrar detalles obtenemos el identificador de la máquina virtual, ejecutamos el siguiente comando:

 

icacls "X:\RUTA\archivo.vhdx" /grant "NT VIRTUAL MACHINE\3DBXXXXX-91XX-493E-XXXX-F6A94963XXXX":(F)

 

Windows NT virtualizado en VMware

En ocasiones por limitaciones de presupuesto, disponibilidad de software, recursos... no es posible en la práctica real tener todos los sistemas actualizados como nos gustaría. Con estas premisas nos toca virtualizar un equipo obsoleto con nada más y nada menos que Windows NT, nos remontamos al año 1993! Aquí es donde la virtualización nos ayuda a dar una solución estable a varios problemas que nos podemos encontrar:

- Reutilización de dongles de seguridad con puerto paralelo (LPT1)
- Ejecución de código de programas para Win16

En nuestro caso concreto no era posible ejecutar el programa ni en Windows 2000, por lo que tuvimos que extraer los discos para crear un disco duro virtual a partir del físco. Una vez creada la máquina en nuestro entorno de virtualización pudimos empezar a actualizar Windows NT a la última versión disponible Service Pack 6a y los discos de instalación originales.

El siguiente paso tocaba mejorar el sistema de ficheros, desde FAT (no fat32) a NTFS dentro del entorno ya virtualizado y redimensionar las particiones originales de 2 GB, ciertamente la máquina NT se había comportado de forma más o menos estable (dentro de los esperable) todos estos años. La conversión desde el propio equipo con el comando:

convert C: /fs:ntfs


Después de un par de reinicios, ya teníamos una mejora necesaria. Aprovechamos para optimizar el funcionamiento, añadiendo un disco duro adicional al sistema para el archivo de paginación y ampliar la RAM hasta los 3 GB, más que suficiente en este caso. La máquina virtualizada en un entorno más estable y controlado empezada a notarse menos perezosa en sus inicios.

Ahora necesitábamos red, en VMware la instalación debía ser sencilla instalando los drivers y las herramientas de integración para el driver AMD PCNET Family Ethernet Adapter pero en este caso se torno algo más complicado al no encontrar los drivers en las fuentes que indica el fabricante. Tras varias pruebas con diferentes discos de instalación, encontramos 2 fuente fiables para los drivers:

- Driver de HP: SP1657
- Driver de IBM: 32p0067

En ambos casos hallamos los archivos que requeríamos para la instalación de la tarjeta de red, sin acudir a los CDs de Windos NT 4.0:

- amddlg.dll
- Amdpcn.sys
- Oemsetup.inf
- vmxnet.sys


Tras el obligado reinicio, ya disponíamos de conectividad de red a través del host:





Actualización: dependiendo de los requisitos tambien es posible virtualizar Windows NT en Hyper-v