Actualizar in‑place de Windows Server 2012 R2 a 2019 dentro de una red aislada puede volverse un dolor de cabeza cuando el proceso revierte tras el primer reinicio y arroja el código 0xC1900101 – 0x20017. Este artículo profundiza en las causas, explica cómo interpretar los registros y muestra un plan de corrección probado específicamente para máquinas virtuales VMware ESXi sobre servidores Dell PowerEdge R740.
Escenario y síntoma central
El asistente de instalación avanza con normalidad hasta el primer reinicio. En la fase SAFE_OS aparecen mensajes como “Installation failed during BOOT operation” y el sistema vuelve automáticamente a 2012 R2. Los archivos setuperr.log
y setupact.log
registran:
- No se pudo inicializar OneSettings ni descargar la base de datos de compatibilidad (compatibility SDB).
- Error al validar la clave de producto
0x8A010001
. - Fallos de conexión a servicios en línea (COS, telemetría, vínculos de compatibilidad).
- Problemas al cargar DLL de migración y limpiar claves de registro de la fase de Upgrade.
Comprendiendo el código 0xC1900101 – 0x20017
Windows utiliza códigos compuestos para describir fallos de instalación:
Primer bloque | Significado |
---|---|
0xC1900101 | Error genérico vinculado a controladores (drivers) o firmware — casi siempre almacenamiento, red o BIOS. |
0x20017 | La devolución de llamada BOOT falló dentro de la fase SAFE_OS; el entorno WinPE no pudo arrancar al nuevo kernel. |
En la práctica, el combo indica que un controlador carga algo inconsistente o sin firma y el sistema opta por revertir para no quedar inusable.
Metodología de diagnóstico
Analizar los registros de instalación
Todos los archivos relevantes se generan en C:\$WINDOWS.~BT\Sources
. Copie setupact.log
y setuperr.log
a otra máquina y busque:
- Códigos de error inmediatamente antes del reinicio final (timestamp más reciente).
- Llamadas a controladores de terceros (
.sys
) sin firma digital actual. - Mensajes “Failed to initialize SDB” o “LoadMigrationDll failed”.
Ejecutar SetupDiag sin conexión
SetupDiag.exe /offline "" /logpath "%SystemDrive%\UpgradeDiag"
SetupDiag correlaciona los hallazgos con una base de conocimiento local y devuelve el controlador, servicio o paquete que bloquea la instalación.
Estrategias de remediación
La siguiente tabla resume las áreas críticas y las acciones recomendadas. Después de la tabla encontrarás explicaciones detalladas que amplían cada punto.
Área | Acciones recomendadas |
---|---|
Compatibilidad de hardware y firmware | Verificar que el R740 y sus controladoras figuren como compatibles con 2019; actualizar BIOS, iDRAC, PERC/RAID y NICs con el último paquete «Dell EMC Server Update Utility» o con la ISO personalizada de ESXi. |
Controladores y dispositivos virtuales | Instalar la versión más reciente de VMware Tools; retirar disqueteras y USB virtuales; cambiar a controladora SCSI VMware Paravirtual; evitar IDE. |
Medio de instalación | Crear una ISO «slipstream» con el CU más reciente y los paquetes Dynamic Update; asegurarse de que la edición y el idioma coincidan con la instalación de origen. |
Integridad del sistema | Ejecutar sfc /scannow ; después dism /online /cleanup-image /scanhealth y /restorehealth ; completar con chkdsk /scan . |
Servicios y software de terceros | Deshabilitar antivirus, agentes de backup, Dell OpenManage y todo servicio no‑Microsoft; realizar un clean boot antes de ejecutar setup.exe /compat ignorewarning . |
Espacio y particiones | Asegurar al menos 32 GB libres en C: ; sistema sin discos dinámicos ni BitLocker activo. |
Clave de producto | Validar la clave MAK/KMS e instalarla con slmgr /ipk <clave> antes de iniciar la actualización. |
Diagnóstico adicional | Revisar compatdata.xml y setupapi.dev.log para encontrar controladores heredados; chequear C:\$WINDOWS.~BT\Sources\Rollback . |
Alternativas | Migrar a un servidor limpio 2019 y restaurar datos vía Storage Migration Service o Backup; o realizar un salto intermedio a 2016 si persisten bloqueos. |
Compatibilidad de hardware y firmware
El Dell R740 con BIOS antiguas (p. ej. versión 1.x del 2018) carga módulos UEFI que no cumplen las directrices de Windows 2019. Una simple actualización a la rama 2.XX resuelve la mayoría de los 0xC1900101
. Verifique además:
- Controlador de la PERC (H730P/H740P) al firmware mínimo requerido (aparecerá en la edición Dell Server Compatibility Matrix).
- Controladoras de red Intel X550 o Broadcom 5720 con firmware NVM y soporte SR‑IOV actualizado.
- Secure Boot: con BIOS antiguas resulta mejor deshabilitarlo temporalmente, instalar y luego reactivar.
Controladores y dispositivos virtuales
La versión 12.x de VMware Tools incluida en ESXi 6.5 no posee controladores de red/vStorage firmados con SHA‑2; Windows 2019 rechazará el paquete. Instale al menos VMware Tools 11.3 (incluido en ESXi 7.0) dentro de 2012 R2 antes de actualizar. Quite también:
- Disqueteras virtuales y unidades USB: suelen cargar
flpdrv.sys
ousbstor.sys
con firmas SHA‑1 que hacen fallar BOOT. - CD/DVD ISO externos: monte la ISO de Windows desde el datastore local con conexión IDE o mejor aún con SCSI Paravirtual.
Crear una ISO “slipstream” actualizada
En entornos sin Internet, el instalador busca el paquete de compatibilidad (Compatibility Appraiser) en Microsoft Update y al no encontrarlo aborta. Evítelo inyectando los últimos parches:
Dism /Mount-Image /ImageFile:W2019.iso /Index:6 /MountDir:D:\W2019Mnt
Dism /Image:D:\W2019Mnt /Add-Package /PackagePath:KB5039796.cab
Dism /Unmount-Image /MountDir:D:\W2019Mnt /Commit
Oscdimg -m -o -u2 -udfver102 D:\W2019Mnt D:\W2019_SLIP.iso
En esta línea /Index:6
corresponde a la edición Datacenter Gui. Ajuste según su caso.
Integridad del sistema de archivos
Controladores dañados en 2012 R2 a veces pasan desapercibidos. Ejecute:
sfc /scannow
dism /online /cleanup-image /restorehealth /source:D:\sources\install.wim
Si sfc
repara archivos críticos, es preferible reiniciar y volver a ejecutar hasta que el resultado sea “Windows Resource Protection did not find any integrity violations”.
Deshabilitar servicios de terceros y clean boot
La técnica clásica:
- Ejecute
msconfig
, active Arranque selectivo, desmarque “Cargar servicios del sistema” y “Cargar elementos de inicio”. - En la pestaña Servicios marque “Ocultar todos los servicios de Microsoft” y haga clic en “Deshabilitar todos”.
- Reinicie y lance la actualización con
setup.exe /compat ignorewarning /norebootui
.
Espacio libre y particiones limítrofes
La fase SAFE_OS crea un archivo Windows.old
y copia install.wim; si C:
está casi lleno, el Upgrade Assistant se detiene. Recuerde además:
- No use discos dinámicos; conviértalos a básicos con
diskmgmt.msc
oConvertTo-BasicDisk
en PowerShell. - Si BitLocker está activo en la unidad del sistema, suspenda la protección:
Manage‑bde –protectors –disable C:
.
Clave MAK o KMS
Un error frecuente es instalar con una ISO «VL» (licenciamiento por volumen) pero utilizar la clave OEM original del fabricante. Verifique la clave correcta:
slmgr /dli
slmgr /ipk XXXXX‑XXXXX‑XXXXX‑XXXXX‑XXXXX
slmgr /ato
El instalador deja de verificar la clave en línea cuando slmgr /ato
devuelve “Licensed” antes del Upgrade.
Herramientas de diagnóstico adicional
- SetupDiag: ya descrito, imprescindible.
- Compatdata.xml: lista completo de dispositivos y sus resultados de compatibilidad; busque cadenas
BlockMigration
oHardBlock
. - setupapi.dev.log: indica el controlador exacto que falló durante Plug & Play.
Proceso completo para una actualización sin conexión exitosa
- Aplicar firmware Dell Server Update al R740 e instalar VMware Tools actualizado.
- Crear y montar la ISO slipstream de Windows Server 2019 con CU y DU.
- Deshabilitar antivirus, servicios no‑Microsoft y suspender BitLocker.
- Ejecutar diagnósticos de integridad (
sfc
/dism
), limpiar drivers antiguos conpnputil /enum-drivers
. - Quitar dispositivos virtuales innecesarios y asignar controladora VMware Paravirtual.
- Iniciar
setup.exe
desde la ISO con la opción/quiet /reflectdrivers:<carpetadllsfirmware>
. - Vigilar el progreso en
C:\$WINDOWS.~BT\Sources\Panther
; especialmentesetupact.log
. - Después del último reinicio, reinstalar VMware Tools y reactivar Secure Boot (si se deshabilitó).
Qué hacer si todavía falla
Si tras seguir cada paso la instalación sigue revirtiendo:
- Migración paralela: implemente Windows Server 2019 limpio y utilice Storage Migration Service para mover roles y datos con mínimo downtime.
- Doble salto 2012 R2 → 2016 → 2019: poco habitual, pero algunas versiones de controladores solo existen en 2016; el instalador 2019 los aceptará como firmas válidas.
- Revisar protección de seguridad: soluciones EDR modernas (p. ej. Carbon Black o CrowdStrike) inyectan DLL incluso estando “deshabilitadas”; desinstale por completo antes de continuar.
Conclusiones
El error 0xC1900101 – 0x20017 puede parecer inescrutable, pero su causa raíz casi siempre reside en controladores o firmware desfasados que colisionan con las políticas de arranque seguro de Windows Server 2019. Invirtiendo tiempo en actualizar el hardware, crear un medio de instalación moderno sin depender de Internet y limpiando servicios de terceros, la actualización in‑place se completa con éxito incluso dentro de una red completamente aislada.