El error “La clave de producto especificada no coincide con ninguna de las imágenes de Windows disponibles para instalación…” al instalar Windows 8/8.1

El problema que pasaré a describir no es tan nuevo como me gustaría, pero sí muy recurrente tanto en usuarios finales, como en diferentes empresas que están adquiriendo los equipos con Windows 8 de forma preinstalada.

Hasta antes de que empezaran a salir los equipos con Windows 8 de forma preinstalada, es decir, un año o menos, existía un tipo de sticker o etiqueta en el equipo conocido como Certificado de Autenticidad (COA), utilizada para identificar el equipo como original, pero además para disponer del código de producto necesario para activar el sistema operativo cuando fuese necesario. Desde la salida de Windows 8 hasta ahora, este modelo cambió drásticamente y ahora no existe la etiqueta en los equipos comprados sino que el código de producto ahora se encuentra embebido en el firmware de la BIOS, lo que hace virtualmente imposible extraer la clave de una forma sencilla, pero facilita la instalación o restauración de Windows 8 con el medio original, pues Windows a menos que se le especifique serial de otra forma, intentará pasar el asistente de instalación con el que le devuelva la BIOS. Todo esto es con el fin de combatir la piratería.

El problema

El cambio no debería representar mayor inconveniente, pero, cuando se intenta realizar una instalación de Windows 8 con un medio diferente al original correspondiente al serial que está embebido, Windows intentará seguir pasando el asistente justo después de darle a Instalar ahora y al no poder validar el código, arrojará un mensaje de error similar a este:

WP_20131128_004

Español: “La clave de producto especificada no coincide con ninguna de las imágenes de Windows disponibles para la instalación. Escriba una clave de producto diferente.”

Inglés: “The product key entered does not match any of the Windows images available for installation. Enter a different product key.”

El problema en cuestion no es que requiera una clave diferente, es que no deja si quiera ingresarla. La instalación entonces no puede iniciarse, a menos que se intente realizar con el medio original OEM que permite y valida esa clave.

La solución

Aunque este problema ha aparecido bastante, siendo la solución que expondré relativamente fácil, la KB oficial de Microsoft que referencia el problema sólo la menciona, cosa que ayuda realmente poco.

Predeterminadamente, el Asistente de Instalación de Windows tiene un orden en que consulta y utiliza el serial de instalación; la prioridad siempre va tenerla el Archivo de Respuesta, comunmente usado para instalación desatendida, luego está el archivo PID.txt que no siempre se encuentra en el medio de instalación, seguido del código que pueda haber en BIOS y por último, la pantalla propia del asistente donde se digita el serial.

Esta gráfica representa la escala de prioridad expuesta:

clip_image001[10]

En este orden de ideas, para solventar el mensaje de error, es necesario crear un Archivo de Respuesta XML o un PID.txt para que el asistente priorice ese sobre el que está en BIOS y que de esa forma continúe la instalación.

*Nota: El archivo PID.txt está pensado desde varias versiones atrás para automatizar el ingreso de la clave de producto al actualizar, utilizado en conjunto con el de EI.cfg, documentados en la página oficial de Microsoft:
http://technet.microsoft.com/en-us/library/hh824952.aspx

Lo primero que debemos hacer, en caso de que nuestro medio esté en una unidad de DVD, es copiar todos los archivos de instalación a una carpeta local, pues debemos guardar el archivo que pasaremos a crear dentro del medio y en un DVD no se puede.

Después de esto, ingresaremos el serial que sí corresponde al medio que se está instalando abriendo un Bloc de Notas en blanco y digitando:

[PID]
Value=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

Donde XXXXX-XXXXX-XXXXX-XXXXX-XXXXX corresponde al código de producto para instalación, por ejemplo:

image

*Nota: El serial que se ven en la captura no es funcional.

Ahora, hacemos clic en el menú Archivo > Guardar como y le indicamos como ubicación la carpeta Sources de los archivos de instalación de Windows 8/8.1, la llamamos PID.txt y hacemos clic en el botón Guardar:

image

Por último, y para que sea más fácil, preparamos un dispositivo USB para realizar la instalación de Windows 8/8.1 desde allí; con el objetivo de no repetir procedimientos, les dejo el enlace a un paso a paso que escribí hace un tiempo en la Web de Fermu.com:
http://www.fermu.com/es/articulos/windows/articulos-y-tutoriales/831-preparar-dispositivo-usb-manualmente-para-instalaci%C3%B3n-de-windows-8

Finalmente, al iniciar la máquina y asegurándonos que se haya guardado el PID.txt en la carpeta Sources como lo indiqué, Windows debe proseguir con el asistente a menos que el producto que se haya escrito esté malo o tampoco corresponda al medio:

WP_20131128_005

*Nota: La primera y última foto son tomadas desde un equipo real, por eso la calidad de la imagen.

Espero sea de utilidad. ¡Feliz inicio de Diciembre 2013!

Saludos,

Checho

Crear imagen (.ISO) de Windows 8.1 con actualizaciones integradas utilizando PowerShell y el ADK

En algunas ocasiones (muy pocas lamentablemente), las personas que se pasan por este blog, sea porque lo siguen o simplemente llegaron buscando alguna cosa en específico, se toman el tiempo de escribirme al correo a través del enlace de Contacto para solicitarme alguna ayuda o bien, para sugerirme contenido que no tengo publicado en el blog o no está del todo completo. El siguiente artículo lo hago con el objetivo de satisfacer uno de esos requisitos enviados a través de correo ya que además creo puede ser útil para muchas personas que les interesa mucho o trabajan en el mundo de la implementación de sistemas operativos Windows.

Una constante de Microsoft cada segundo martes del respectivo mes, es liberar una cantidad de actualizaciones para los productos que las requieran. Estas actualizaciones, a diferencia de los mitos que viajan con ellas, no relentizan ni dañan el sistema operativo – cuando se liberan para Windows- sino que ayudan a cerrar huecos vulnerables, corregir fallas o agregar soporte y compatibilidad.

Teniendo lo anterior en cuenta, es necesario que en un ambiente corporativo se planee una forma de evaluación y distribución de estas actualizaciones, tarea que normalmente se realiza a través de soluciones como WSUS o System Center Configuration Manager (SCCM); sin embargo, una de las ventajas en el formato de imagen de Windows (WIM) nacido desde Windows Vista, suele ser útil y práctico aprovechar varias herramientas de Microsoft integradas en el AIK o ADK (Según el caso) para simplemente montar la imagen offline en algún directorio, inyectar los respectivos parches, desmontarla, crear la imagen y por último pasar a desplegar. 

Debido a que estamos casi que estrenando Windows 8.1 y que es normal que hasta la fecha ya hayan varias actualizaciones disponibles, explicaré a continuación el paso a paso para realizar este proceso correctamente, utilizando además PowerShell que está de moda y una herramienta del ADK llamada OSCDIMG.

Requerimientos:

1. La imagen o archivos de instalación de Windows 8.1 en cualquier edición. Si no lo tienen, pueden descargar un período de prueba desde aquí:
http://technet.microsoft.com/es-es/evalcenter/hh699156.aspx

2. Buscar y descargar las actualizaciones deseadas en la página web de Microsoft:
http://www.microsoft.com/en-us/download/windows.aspx

3. Un equipo técnico donde se pueda hacer el montaje de la imagen de Windows y tenga las siguientes carpetas creadas en la unidad del equipo:

C:Imagen

C:Updates

C:Montar

*Nota: Los nombres no son mandatorios, pero para poder facilitar el artículo, referenciaré estos en toda la siguiente fase del escrito.

4. Instalar en el equipo técnico el ADK para Windows 8.1. Lo pueden descargar desde aquí:
http://www.microsoft.com/es-co/download/details.aspx?id=39982

5. Un equipo de referencia donde se pueda probar la instalación.

*Nota: Para la siguiente parte, estaré trabajando en un equipo con Windows 8.1 como equipo de referencia.

Montando la imagen:

Antes de montar la imagen y solo en caso de que como en mi caso, tengamos los archivos de instalación en un DVD o imagen .ISO, es necesario insertar el medio o montar la imagen y después copiar todo al directorio C:Imagen creado en los requerimientos. Para hacer esto de una forma rápida y fácil:

Desde la Pantalla de Inicio, buscamos CMD, clic derecho y seleccionamos: “Ejecutar como administrador”. Ejecutamos:

xcopy <Origen>*.* /s/e/f C:Imagen

Donde <Origen> corresponde a la unidad donde están los archivos de instalación; para mi caso, como era la unidad “J:”, el comando sería:

xcopy J:*.* /s/e/f C:Imagen

image

*Nota: El proceso puede tardar un poco dependiendo de la velociad de escritura y lectura del disco. La copia también se puede hacer manualmente desde el Explorador de Archivos.

Una vez hecho esto, cerramos el Símbolo del Sistema y ahora, desde la Pantalla de Inicio nuevamente, buscamos PowerShell, clic derecho y “Ejecutar como administrador”.

Desde PowerShell, ejecutamos:

Mount-WindowsImage -ImagePath C:Imagensourcesinstall.wim
-Index 1 -Path C:Montar

image

*Nota: El índice (Index) puede variar dependiendo de qué imagen estemos instalado, si es la Enterprise siempre será el 1, pero si es sobre un Windows 8.1 o Windows 8.1 PRO, puede ser diferente puesto que ambas imágenes están en una sola imagen. Es posible revisar el índice ejecutando por ejemplo:

Get-WindowsImage -ImagePath C:ImagenSourcesinstall.wim

image

Al terminar debemos ver algo como esto:

image

Inyectando actualizaciones:

Aquí es necesario copiar todas las actualizaciones y parches descargados a la carpeta C:Updates sin necesidad de renombrarlos o crear sub-carpetas.

*Nota: Los paquetes soportados deben tener extensión .MSU o .CAB unicamente.

Para este artículo, utilizaré un par de actualizaciones de seguridad, y el parche que corresponde a la KB KB2902864 para solucionar el molesto tema de la marca de agua:

 image

Después de copiar los archivos, abrimos nuevamente PowerShell con privilegios administrativos y ejecutamos:

Add-WindowsPackage -Path C:Montar -PackagePath C:Updates

image

Para verificar que los paquetes hayan quedado instalados, podemos ejecutar:

Get-WindowsPackage -Path C:Montar 

image

Desmontando la imagen:

Cada que se monta y se trabaja con una imagen, es necesario desmontarla guardando los cambios, pues de lo contrario no habremos hecho nada. Para desmontar la imagen, ejecutamos desde PowerShell:

Dismount-WindowsImage -Path C:Montar -Save

image

Hasta aquí todo lo que requeríamos de PowerShell, así que podemos cerrarlo y proceder a crear la imagen necesaria para instalar Windows 8.1 con las actualizaciones.

Generando la imagen ISO:

Como en los primeros pasos tuvimos que copiar los archivos del medio o imagen localmente, es necesario generar otra vez el .ISO para que pueda ser iniciado desde cualquier equipo y aquí es donde entra a jugar el ADK.

Desde la Pantalla de Inicio, en el equipo técnico con el ADK instalado, buscamos: Deployment and Imaging Tools Environment, clic derecho y Ejecutar como administrador.

image

Desde el Símbolo ejecutamos:

oscdimg -bC:ImagenBootEtfsboot.com -u2 -h C:Imagen C:Win81_U.iso

image

*Nota: El nombre “Win81_U.iso” puede variar al que ustedes quieran.

Probando instalación y resultados:

Naturalmente, nuestro último paso es instalar el sistema operativo en el equipo de referencia, ir hasta Panel de Control > Programas > Programas y características > Ver actualizaciones instaladas y validar que los parches se hayan instalado con Windows:

B

Espero sea de utilidad.

PD. No olviden seguirme en Twitter: www.twitter.com/secalderonr

Saludos,

Checho

Instalación desatendida de Windows 8/8.1 con MDT 2013

Hace ya unos años (2010 para ser precisos), cuando estan incurcionando en el mundo de la implementación de sistemas operativos Windows usando las herramientas de Microsoft y todo lo que esto acarrea, escribí un artículo donde expliqué paso a paso cómo realizar una instalación completamente desatendida de Windows 7 con MDT 2010 U1; post que para mi fortuna tuvo muchísima acogida y gran cantidad de comentarios, ¡Cosa que les agradezco!

El proceso para los actuales Windows 8 o Windows 8.1 realmente no ha cambiado mucho, sin embargo, hay algunos detalles que sí lo han hecho, así que decidí pensar en un tipo de actualización de contenido y generar este artículo enfocado a cómo pueden realizar la instalación totalmente automatizada de Windows 8/8.1 a través de la última versión del popular Microsoft Deployment Toolkit (MDT) 2013, para poder después abordar otros procesos interesantes que se pueden optimizar desde esta herramienta en futuros escritos.

¿Qué necesitamos?

1. Un equipo técnico donde esté instalado Windows Server 2008/2008 R2/2012/2012 R2. Lo ideal sería que estén sobre la última versión disponible de Server, así que para los que no lo sabían, pueden descargar un período de prueba con 180 días desde aquí:
http://technet.microsoft.com/es-ES/evalcenter/dn205286.aspx

2. Tener habilitada la característica de Windows Deployment Services (WDS) e instalar y configurar Microsoft Deployment Toolkit 2013.

Para descargar MDT 2013, visiten la web oficial:
http://www.microsoft.com/en-us/download/details.aspx?id=40796 

Una vez descarguen el MDT 2013, pueden pasar a instalarlo y configurarlo como lo han hecho en versiones anteriores; pueden ver un artículo sobre la configuración básica aquí:
http://geeks.ms/blogs/checho/archive/2013/02/05/implementaci-243-n-b-225-sica-de-windows-8-con-mdt-2012-update-1-y-windows-deployment-services.aspx

Pueden ver la configuración básica de WDS en este artículo de Wiki que escribí:
https://social.technet.microsoft.com/wiki/contents/articles/15720.instalacion-y-configuracion-basica-de-windows-deployment-services-en-server-2012-es-es.aspx

3. Archivos de instalación de Windows 8/8.1. Aunque este post se enfocará en 8.1, es el mismo proceso para ambas versiones.

La versión de evaluación que tiene 90 días de Windows 8.1 Enterprise la bajan desde aquí:
http://technet.microsoft.com/es-co/evalcenter/hh699156.aspx

4. Un equipo de referencia que esté unido a la red del Server para implementar.

Creando Secuencia de Tareas

Antes de proceder a crear la Secuencia de Tareas, naturalmente debemos tener ya creado y configurado los otros aspectos del Deployment Share, como el Sistema Operativo, Aplicaciones, Parches y Controladores que deseemos agregar. Todo lo expliqué paso a paso en el post de implementación básica.

Una vez hecho esto, abrimos el Deployment Workbench –si ya no estaba abierto- en el Servidor, expandimos nuestro Deployment Share (en mi caso se llama WinSide), clic derecho en el nodo de Task Sequences y seleccionamos New Task Sequence.

 image

Al abrirse el asistente para New Task Sequence en la página de General Settings; aquí debemos especificar un Task Sequence ID, Task sequence name y Task sequence comments. Básicamente, un identificador ojalá en un formato estándar para nuestro despliegue, un nombre descriptivo y opcionalmente unos comentarios sobre la respectiva Secuencia de Tareas, por ejemplo:

image

*Nota: Será necesario sobre todo referenciar correctamente el identificador especificado.

Clic en el botón Next para pasar a la página de Select Template. Aquí dejamos como predeterminada la Secuencia de Tareas: Standard Client Task Sequence y clic en Next.

image

En la página de Select OS, seleccionamos el sistema operativo a desplegar, que sería 8 u 8.1 y clic en el botón Next.

image

En la página de Specify Product Key, escribimos el código de producto para activar (si lo tenemos), o bien dejamos la opción de Do not specify a product key at this time y clic en el botón Next.

image

En la página de OS Settings, rellenamos los campos referentes al registro y clic en Next.

image

En la página de Admin Password, digitamos una contraseña segura para la cuenta integrada de administrador o bien seleccionamos Do not specify an Administrator password at this time si no queremos poner contraseña y clic en el botón Next.

image

En la página de Summary, revisamos que todo haya quedado correctamente y clic en Next.

En la página de Confirmation, clic en el botón Finish para terminar.

Nos debe quedar ahora la Secuencia de Tareas creada:

image

Lista la Secuencia de Tareas, lo siguiente es lo más interesante, pues se trata de automatizar todo el proceso de instalación.

*Nota: Recordemos nuevamente que no estoy tocando los pasos para crear el Deployment Share ni agregar elementos a cada componente pues ya está explicado en el artículo que referencié en el segundo paso de los requisitos.

Automatizando la instalación

Hacemos clic derecho sobre el Deployment Share y seleccionamos Properties:

image

Nos pasamos a la pestaña de Rules y veremos que hay ya algunas Propiedades que de forma predeterminada están configuradas de acuerdo a lo que hayamos seleccionado en el momento de crear el Deployment Share:

image

Este archivo se llama CustomSettings.ini y aquí reside la mayor parte de la personalizado del asistente de instalación de MDT. Con esto claro, automatizaremos completamente los parámetros que ya están indicados y los que hacen falta para que solo tengamos que iniciar el equipo desde la red.

Justo después de OSInstall, pondremos: SkipWizard=Yes. Esto obviará todo el asistente de instalación de MDT y a continuación, configuraremos los parámetros de la siguiente forma:


_SMSTSOrgName=WinSide Corp

JoinDomain=winside.local
DomainAdmin=Administrator
DomainAdminDomain=Winside.local
DomainAdminPassword=Passw0rd

TaskSequenceID=D01-ENT-81

OSDComputerName=%ComputerName%

UILanguage=en-US
UserLocale=en-US
KeyboardLocale=en-US

TimeZoneName=SA Pacific Standard Time

Applications001={5bc9ed48-ae16-4e03-9c4e-3d99f197589c}

SkipBDDWelcome=YES


Noten que la instalación de aplicaciones no se indica por el nombre sino por el GUID que generó el asistente para importar aplicaciones del Deployment Workbench. Para poder ver el respectivo GUID de cada aplicación, hacemos lo siguiente:

En el nodo de Applications, clic derecho en cada aplicación a instalar y clic en Properties:

image

En la ventana de propiedades, nos ubicamos en la pestaña General y copiamos todo el contenido que nos referencia el Application GUID:

image

En las Reglas, dentro de las Propiedades del Deployment Share, indicamos entonces por cada aplicación la palabra Applications, seguida de 00#, donde # empieza en 1 y termina en la cantidad de aplicaciones agregadas. Por ejemplo: Applications001, Applications002, etc.

*Nota: Los datos para cada uno pueden ser diferentes, y esto hace referencia al nombre del domino, credenciales, identificador para la Secuencia de Tareas, lenguaje y zona horaria.

*Nota 2: La propiedade de _SMSTSOrgName hace referencia al nombre de la compañía para que aparezca en la ventana que dirige el asistente de instalación.

Todo se vería en mi caso de la siguiente forma:

image

*Nota: Como ven, no es necesario dejar los otros Skip que predeterminadamente existen pues el SkipWizard los acoje todos.

Hacemos clic en el botón de Apply y OK para terminar.

Actualizando recurso compartido

Ya configurado todo, el siguiente paso es hacer clic derecho sobre el Deployment Share creado y clic en Update Deployment Share.

image

En la página de Options del Update Deployment Wizard, dejamos la opción de Optimize the boot image updating process y clic en el botón Next.

image

En la página de Summary, clic en el botón Next.

En la página de Confirmation, clic en el botón Finish para culminar.

Agregando la imagen de arranque al WDS

Tal cual lo muestro en el artículo de implementación básica, utilizamos el Windows Deployment Services (WDS) para cargar la imagen de arranque generada por el MDT, que predeterminadamente se llama LiteToutch_PE con el fin de que cada equipo conectado inicie desde ahí y empiece a obtener los recursos desde el recurso compartido.

Para agregar la imagen, abrimos el Servicio de Implementación de Windows (WDS), expandimos nuestro servidor, hacemos clic derecho en el nodo de Boot Images y seleccionamos Add Boot Image…

image

En la página de Image File, clic en el botón Browse, navegamos hasta el directorio de Boot en nuestro recurso compartido y seleccionamos el LiteTouch_PE correspondiente a la arquitectura del sistema operativo a implementar.

Para este caso, mi recurso compartido se llama WinSide y desplegaré una imagen de 64 bits, así que la ruta completa sería: C:WinSideBootLiteTouch_x64.wim

image

Clic en el botón Next para continuar.

En la página de Image Metadata, clic en el botón Next.

En la página de Summary, clic en el botón Next.

En la página de Task Progress, clic en el botón Finish.

image

Probando instalación

¡Todo listo! Nuestro último gran paso es conectar nuestro equipo de referencia, iniciar por red y presionar la tecla de F12 una vez detecte la IP entregada por el Servidor que tiene el WDS:

image

*Nota: Si tenemos más de una imagen en el WDS, tendremos que seleccionar desde cuál deseamos iniciar, de lo contrario, se iniciará con la imagen que esté disponible.

Como no automatizamos la autenticación, veremos dos posibles pantallas al iniciar, la de Bienvenida y la de Credenciales.

En la primera – en caso de que aparezca-, hacemos clic en Run the Deployment Wizard to install a new operating system

image

*Nota: Se supone que esta pantalla no debería aparecer, así que estoy investigando si se trata de un fallo de MDT 2013.

En la segunda, escribimos nuestro usuario con permiso para desplegar las instalaciones y clic en el botón OK:

image

*Nota: Para automatizar la pantalla de credenciales, es necesario modificar el Bootstrap.ini, pero por seguridad es mejor siempre indicar los datos.

Pasados unos segundos, la instalación iniciará y ya solo será esperar hasta que termine completamente; mientras tanto veremos el pequeño cuadro de diálogo indicándonos cada proceso:

image

Aquí es donde nos sentamos a esperar que termine tranquilamente.

¡Espero sea de utilidad y comentarios bienvenidos!

PD. No olviden seguirme en Twitter: www.twitter.com/secalderonr

Saludos,

Checho