Azure Windows apagado de vm está atascado en "Reiniciar", "Apagar" o "Detener servicios"
En este artículo se proporcionan pasos para resolver los problemas de los mensajes "Reiniciar", "Apagar" o "Detener servicios" que puede encontrar al reiniciar una máquina virtual (VM) de Windows en Microsoft Azure.
Síntomas
Cuando usas diagnósticos de arranque para ver la captura de pantalla de la máquina virtual, es posible que veas que la captura de pantalla muestra el mensaje "Reiniciar", "Apagar" o "Detener servicios".
Causa
Windows el proceso de apagado para realizar operaciones de mantenimiento del sistema y procesar cambios como actualizaciones, roles y características. No se recomienda interrumpir este proceso crítico hasta que se complete. Según el número de actualizaciones o cambios y el tamaño de la máquina virtual, el proceso puede tardar mucho tiempo. Si el proceso se detiene, es posible que el sistema operativo se vuelva dañado. Solo interrumpa el proceso si tarda demasiado tiempo.
Solución
Recopilar un volcado de memoria de proceso
Descargue la herramienta Procdump en un disco de datos nuevo o existente, que se adjunta a una máquina virtual en funcionamiento de la misma región.
Desasoye el disco que contiene los archivos necesarios de la máquina virtual en funcionamiento y adjunte el disco a la máquina virtual rota. Llamamos a este disco el disco utilidad.
Use serial console para completar los siguientes pasos:
Abra un PowerShell administrativo y compruebe el servicio que deja de responder al detenerse.
Get-Service | Where-Object {$_.Status -eq "STOP_PENDING"}En un CMD administrativo, obtenga el PID del servicio que no responde.
tasklist /svc | findstr /i <STOPING SERVICE>Obtener una muestra de volcado de memoria del proceso no responde <STOPPING SERVICE>.
procdump.exe -s 5 -n 3 -ma <PID>Ahora, elimina el proceso no responde para desbloquear el proceso de apagado.
taskkill /PID <PID> /t /f
Una vez que el sistema operativo se inicia de nuevo, si se inicia normalmente, solo asegúrate de que la coherencia del sistema operativo sea correcta. Si se notifican daños, ejecute el siguiente comando hasta que el disco esté libre de daños:
dism /online /cleanup-image /restorehealth
Si no puede recopilar un volcado de memoria de proceso o este problema es recursivo y necesita un análisis de causa raíz, continúe con la recopilación de un volcado de memoria del sistema operativo a continuación, continúe con la apertura de una solicitud de soporte técnico.
Recopilación de un volcado de memoria del sistema operativo
Si el problema no se soluciona después de esperar a que se hayan procesado los cambios, deberá recopilar un archivo de volcado de memoria y ponerse en contacto con el soporte técnico. Para recopilar el archivo de volcado de memoria, siga estos pasos:
Conecte el disco del sistema operativo a una máquina virtual de recuperación.
Tome una instantánea del disco del sistema operativo de la máquina virtual afectada como copia de seguridad. Para obtener más información, consulte Instantánea de un disco.
Conecte el disco del sistema operativo a una máquina virtual de recuperación.
Escritorio remoto a la máquina virtual de recuperación.
Si el disco del sistema operativo está cifrado, debe desactivar el cifrado antes de pasar al siguiente paso. Para más información, consulte Descifrado del disco de sistema cifrado en la máquina virtual que no arranca.
Busque el archivo de volcado de memoria y envíe una incidencia de soporte técnico.
En la máquina virtual de recuperación, vaya a la carpeta de Windows en el disco del sistema operativo conectado. Si la letra de unidad que se asigna al disco del sistema operativo conectado es F, deberá ir a F:\Windows.
Busque el archivo memory.dmp y, a continuación, envíe una incidencia de soporte técnico con el archivo de volcado de memoria.
Si no encuentra el archivo de volcado de memoria, vaya el paso siguiente para habilitar el registro de volcado de memoria y Serial Console.
Habilitación del registro de volcado de memoria y Serial Console
Para habilitar el registro de volcado de memoria y Serial Console, ejecute el siguiente script.
Abra la sesión de símbolo del sistema con privilegios elevados (Ejecutar como administrador).
Ejecute el siguiente script:
En este script, se supone que la letra de unidad asignada al disco del sistema operativo adjunto es F. Reemplázcala por el valor adecuado en la máquina virtual.
reg load HKLM\BROKENSYSTEM F:\windows\system32\config\SYSTEM REM Enable Serial Console bcdedit /store F:\boot\bcd /set {bootmgr} displaybootmenu yes bcdedit /store F:\boot\bcd /set {bootmgr} timeout 5 bcdedit /store F:\boot\bcd /set {bootmgr} bootems yes bcdedit /store F:\boot\bcd /ems {<BOOT LOADER IDENTIFIER>} ON bcdedit /store F:\boot\bcd /emssettings EMSPORT:1 EMSBAUDRATE:115200 REM Suggested configuration to enable OS Dump REG ADD "HKLM\BROKENSYSTEM\ControlSet001\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f REG ADD "HKLM\BROKENSYSTEM\ControlSet001\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f REG ADD "HKLM\BROKENSYSTEM\ControlSet001\Control\CrashControl" /v NMICrashDump /t REG_DWORD /d 1 /f REG ADD "HKLM\BROKENSYSTEM\ControlSet002\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f REG ADD "HKLM\BROKENSYSTEM\ControlSet002\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f REG ADD "HKLM\BROKENSYSTEM\ControlSet002\Control\CrashControl" /v NMICrashDump / t REG_DWORD /d 1 /f reg unload HKLM\BROKENSYSTEMCompruebe que hay suficiente espacio en el disco para asignar tanta memoria como la RAM, que depende del tamaño que seleccione para esta máquina virtual.
Si no hay suficiente espacio o la máquina virtual es grande (serie G, GS o E), puede cambiar la ubicación donde se creará este archivo y hacer referencia a él a cualquier otro disco de datos, que esté conectado a la máquina virtual. Para cambiar la ubicación, debe cambiar la siguiente clave:
reg load HKLM\BROKENSYSTEM F:\windows\system32\config\SYSTEM REG ADD "HKLM\BROKENSYSTEM\ControlSet001\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "<DRIVE LETTER OF YOUR DATA DISK>:\MEMORY.DMP" /f REG ADD "HKLM\BROKENSYSTEM\ControlSet002\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "<DRIVE LETTER OF YOUR DATA DISK>:\MEMORY.DMP" /f reg unload HKLM\BROKENSYSTEMInicie la máquina virtual y acceda a la consola serie.
Seleccione Enviar interrupción no enmascarable (NMI) para desencadenar el volcado de memoria.
Vuelva a conectar el disco del sistema operativo a una máquina virtual de recuperación y recopile el archivo de volcado.
Consultar al soporte técnico de Microsoft
Después de recopilar el archivo de volcado, póngase en contacto con el soporte técnico de Microsoft para determinar la causa raíz.