O Windows mostra "CRITICAL SERVICE FAILED" na tela azul ao inicializar uma VM do Azure

Este artigo descreve o erro "CRITICAL SERVICE FAILED" que pode ocorrer ao inicializar uma máquina virtual (VM) do Windows no Microsoft Azure. Fornece etapas para resolver os problemas.

Sintoma

Uma VM do Windows não inicia. Ao verificar as capturas de tela de inicialização em Diagnóstico de inicialização, você verá uma das seguintes mensagens de erro em uma tela azul:

  • "Seu PC teve um problema e precisa ser reiniciado. Você pode reiniciar. Para obter mais informações sobre esse problema e possíveis correções, visite https://windows.com/stopcode. Se você ligar para a equipe de suporte, forneça esta informação: Código de parada: CRITICAL SERVICE FAILED"
  • "Seu PC teve um problema e precisa ser reiniciado. Estamos apenas coletando algumas informações de erro e, em seguida, reiniciaremos para você. Se quiser saber mais, pesquise online mais tarde por este erro: CRITICAL_SERVICE_FAILED"

Motivo

Existem várias causas para erros de parada. As causas mais comuns são:

  • Problemas com um driver
  • Arquivo de sistema ou memória corrompidos
  • Aplicação acessa um setor proibido da memória

Solução

Dica

Se você tiver um backup recente da VM, tente restaurar a VM do backup para corrigir o problema de inicialização.

Para resolver esse problema, entre em contato com o suporte e envie um arquivo dump, que nos ajudará a diagnosticar o problema mais rapidamente ou tente a seguinte solução de autoajuda.

Anexe o disco do sistema operacional a uma VM de recuperação

  1. Faça um instantâneo do disco do sistema operacional da VM afetada como um backup. Para saber mais, consulte Instantâneo de um disco.
  2. Anexe o disco do SO a uma VM de recuperação.
  3. Estabeleça uma conexão de área de trabalho remota com a VM de recuperação.

Ativar logs de despejo e console serial

O registro de despejo e o Console Serial nos ajudarão a realizar mais soluções de problemas.

Para habilitar logs de despejo e console serial, execute o seguinte script.

  1. Abra uma sessão elevada de prompt de comando (execute como administrador).

  2. Execute o seguinte script:

    Neste script, presumimos que a letra da unidade atribuída ao disco do sistema operacional anexado seja F. Você deve substituí-la pelo valor apropriado para sua VM.

    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 10
    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 2 /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 2 /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\BROKENSYSTEM
    

Substitua os drivers não assinados

  1. Na recuperação da VM, execute o seguinte comando em um prompt de comandos com privilégios elevados: Este comando define o disco do sistema operacional afetado para iniciar no modo de segurança na próxima inicialização:

    bcdedit /store <OS DISK you attached>:\boot\bcd /set {default} safeboot minimal
    

    Por exemplo, se o disco do SO que você anexou for a unidade F, execute o seguinte comando:

    bcdedit /store F: boot\bcd /set {default} safeboot minimal
    
  2. Desconecte o disco do sistema operacional e reconecte o disco do sistema operacional à VM afetada. A VM inicializará no modo de segurança. Se o erro persistir, vá para a etapa opcional.

  3. Abra a caixa Executar e execute verificador para iniciar a ferramenta Driver Verifier Manager.

  4. Selecione Selecionar automaticamente drivers não assinados e clique em Avançar.

  5. Você obterá a lista dos arquivos de driver não assinados. Lembre-se dos nomes dos arquivos.

  6. Copie as mesmas versões desses arquivos de uma VM em funcionamento e substitua esses arquivos não assinados.

  7. Remova as configurações de inicialização segura:

    bcdedit /store <OS DISK LETTER>:\boot\bcd /deletevalue {default} safeboot
    
  8. Reinicie a VM.

Opcional: analise os logs de dump no modo Dump Crash

Para analisar você mesmo os logs de despejo, siga estas etapas:

  1. Anexe o disco do sistema operacional a uma VM de recuperação.

  2. No disco do SO que você anexou, navegue até \windows\system32\config. Copie todos os arquivos como um backup caso seja necessária uma reversão.

  3. Inicie o Editor do Registro (regedit.exe).

  4. Selecione a chave HKEY_LOCAL_MACHINE. No menu, selecione Arquivo>Carregar Hive.

  5. Navegue até a pasta \windows\system32\config\SYSTEM no disco do SO que você anexou. Para o nome da seção, digite BROKENSYSTEM. A nova seção do registro é exibida na chave HKEY_LOCAL_MACHINE.

  6. Navegue até HKEY_LOCAL_MACHINE\BROKENSYSTEM\ControlSet00x\Control\CrashControl e faça as seguintes alterações:

    Reinicialização automática = 0

    CrashDumpAtivado = 2

  7. Selecione BROKENSYSTEM. No menu, selecione Arquivo>Descarregar Hive.

  8. Modifique a configuração do BCD para inicializar no modo de depuração. Digite os seguintes comandos em um prompt de comandos com privilégios elevados:

    REM Setup some debugging flags on the boot manager
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {bootmgr} default {<IDENTIFIER OF THE WINDOWS BOOT LOADER>}
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {bootmgr} nointegritychecks on
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {bootmgr} integrityservices disable
    
    REM Setup some debugging flags on the boot loader
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} bootlog yes
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} bootstatuspolicy displayallfailures
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} nointegritychecks on
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} testsigning off
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} recoveryenabled no
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} integrityservices disable
    
  9. Desconecte o disco do sistema operacional e reconecte o disco do sistema operacional à VM afetada.

  10. Inicialize a VM para ver se ela mostra a análise de despejo. Encontre o arquivo que falha ao carregar. Você precisa substituir esse arquivo por um arquivo da VM em funcionamento.

    O seguinte é uma amostra de análise de despejo. Você pode ver que a FAILURE está em filecrypt.sys: "FAILURE_BUCKET_ID: 0x5A_c0000428_IMAGE_filecrypt.sys".

    kd> !analyze -v 
    
    ******************************************************************************* 
    * * * Bugcheck Analysis * * * 
    
    ******************************************************************************* 
    CRITICAL_SERVICE_FAILED (5a) Arguments: Arg1: 0000000000000001 Arg2: ffffd80f4bfe7070 Arg3: ffffb00b0513d320 Arg4: ffffffffc0000428 Debugging 
    Details: ------------------ 
    DUMP_CLASS: 1 DUMP_QUALIFIER: 401 BUILD_VERSION_STRING: 10.0.14393.1770 (rs1_release.170917-1700) 
    DUMP_TYPE: 1 BUGCHECK_P1: 1 BUGCHECK_P2: ffffd80f4bfe7070 BUGCHECK_P3: ffffb00b0513d320 BUGCHECK_P4: ffffffffc0000428 BUGCHECK_STR: 0x5A_c0000428 
    CPU_COUNT: 1 CPU_MHZ: a22 CPU_VENDOR: GenuineIntel CPU_FAMILY: 6 CPU_MODEL: 3d CPU_STEPPING: 4 DEFAULT_BUCKET_ID: WIN8_DRIVER_FAULT 
    PROCESS_NAME: System CURRENT_IRQL: 0 ANALYSIS_SESSION_HOST: MININT-6RMM091 ANALYSIS_SESSION_TIME: 11-15-2017 19:32:42.0841 
    ANALYSIS_VERSION: 10.0.16361.1001 amd64fre STACK_TEXT: ffffc701`1dc74948 fffff803`b2ff4b4a : 00000000`0000005a 00000000`00000001 ffffd80f`4bfe7070 ffffb00b`0513d320 : nt!KeBugCheckEx [d:\rs1\minkernel\ntos\ke\amd64\procstat.asm @ 127] ffffc701`1dc74950 fffff803`b3205df3 : ffffd80f`4bba9f58 ffffd80f`4bba9f58 ffffc701`1dc74b80 ffffd80f`00000006 : nt!IopLoadDriver+0x19f8e6 [d:\rs1\minkernel\ntos\ke\amd64\threadbg.asm @ 81] 
    RETRACER_ANALYSIS_TAG_STATUS: DEBUG_FLR_FAULTING_IP is not found THREAD_SHA1_HASH_MOD_FUNC: eb79608c07faa1af62c0e61f25ff6bc1d6dfdb25 THREAD_SHA1_HASH_MOD_FUNC_OFFSET: 96a3a314834bb4e8443a8b7201525fc5dfc1878b THREAD_SHA1_HASH_MOD: 30a3e915496deaace47137d5b90c3ecc03746bf6 FOLLOWUP_NAME: wintriag
    MODULE_NAME: filecrypt IMAGE_NAME: filecrypt.sys DEBUG_FLR_IMAGE_TIMESTAMP: 0 IMAGE_VERSION: STACK_COMMAND: .thread ; .cxr ; kb FAILURE_BUCKET_ID: 0x5A_c0000428_IMAGE_filecrypt.sys BUCKET_ID: 0x5A_c0000428_IMAGE_filecrypt.sys PRIMARY_PROBLEM_CLASS: 0x5A_c0000428_IMAGE_filecrypt.sys TARGET_TIME: 2017-11-13T20:51:04.000Z OSBUILD: 14393 OSSERVICEPACK: 1770 SERVICEPACK_NUMBER: 0 OS_REVISION: 0 SUITE_MASK: 144 PRODUCT_TYPE: 3 OSPLATFORM_TYPE: x64 OSNAME: Windows 10 OSEDITION: Windows 10 Server TerminalServer DataCenter OS_LOCALE: USER_LCID: 0 OSBUILD_TIMESTAMP: 2017-09-17 19:16:08 BUILDDATESTAMP_STR: 170917-1700 BUILDLAB_STR: rs1_release BUILDOSVER_STR: 10.0.14393.1770 ANALYSIS_SESSION_ELAPSED_TIME: bfc ANALYSIS_SOURCE: KM FAILURE_ID_HASH_STRING: km:0x5a_c0000428_image_filecrypt.sys FAILURE_ID_HASH: {35f25777-b01e-70a1-c502-f690dab6cb3a} FAILURE_ID_REPORT_LINK: https://go.microsoft.com/fwlink/?LinkID=397724&FailureHash=35f25777-b01e-70a1-c502-f690dab6cb3a
    
  11. Quando a VM estiver funcionando e inicializando normalmente, remova as configurações de Dump Crash:

    REM Restore the boot manager to default values
    bcdedit /store <OS DISK LETTER>:\boot\bcd /deletevalue {bootmgr} nointegritychecks
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {bootmgr} integrityservices enable
    
    REM Restore the boot loader to default values for an azure VM
    bcdedit /store <OS DISK LETTER>:\boot\bcd /deletevalue {default} bootlog
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} bootstatuspolicy ignoreallfailures
    bcdedit /store <OS DISK LETTER>:\boot\bcd /deletevalue {default} nointegritychecks
    bcdedit /store <OS DISK LETTER>:\boot\bcd /deletevalue {default} testsigning
    bcddit /store <OS DISK LETTER>:\boot\bcd /set {default} recoveryenabled no
    bcdedit /store <OS DISK LETTER>:\boot\bcd /set {default} integrityservicesenable
    

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.