Falha no serviço de ativação de processos do Windows - Windows 10

9

O Serviço de Ativação de Processo do Windows (WAS) não será mais iniciado no meu PC com Windows 10. Como resultado, o IIS não será iniciado. Não tenho muita certeza de quando aconteceu, mas provavelmente no último mês.

Durante a inicialização, agora recebo uma série de 4 eventos de erro no log do sistema:

WAS 5215: O Serviço de Ativação de Processo do Windows (WAS) falhou ao executar a inicialização da instalação offline. O campo de dados contém o número do erro. [Campo de dados: 50000780]

WAS 5005: O Serviço de Ativação de Processos do Windows (WAS) está sendo interrompido porque encontrou um erro. O campo de dados contém o número do erro. [Campo de dados: 50000780]

Service Control Manager 7023: O serviço WAS foi finalizado com o seguinte erro: O arquivo existe.

Service Control Manager 7001: O serviço W3SVC depende do serviço WAS que falhou ao iniciar devido ao seguinte erro: O arquivo existe.

Não tenho muitas referências a esse tipo de erro com o erro que o arquivo existe .

(Tentei usar o ProcMon para tentar identificar a qual arquivo ele está se referindo, mas ele se recusa absolutamente a executar.)


Editar ... finalmente fez o ProcMon funcionar (depois de extrair a versão de 64 bits usando o VS2017). Acontece que o arquivo que causou o problema acima foi o arquivo "applicationhost.config.tmp" na C:\Windows\System32\inetsrv\Configpasta. A remoção desse arquivo permitiu que o processo continuasse mais.

Agora, o primeiro e o terceiro erros são:

WAS 5215: O Serviço de Ativação de Processo do Windows (WAS) falhou ao executar a inicialização da instalação offline. O campo de dados contém o número do erro. [Campo de dados: 0D000780]

Service Control Manager 7023: O serviço Windows Process Activation Service terminou com o seguinte erro: Os dados são inválidos.


De acordo com a resposta de Yanbing Shi, aqui estão as linhas mais recentes do iis.logarquivo:

[01/13/2018 23:10:41] [ ***** IIS 10.0 Component Based Setup ***** ] [01/13/2018 23:10:41] .\inetsrv\iissetup.exe /install SharedLibraries /nano [01/13/2018 23:10:41] Setting Installation Type to Nano [01/13/2018 23:10:41] Successfully added IIS_IUSRS ACE to DACL at %ProgramData%\Microsoft\Windows\WER\ReportQueue. [01/13/2018 23:10:42] < !!FAIL!! > Failed to create the NetFrameworkConfigurationKey key container (result=0x8009000f) [01/13/2018 23:10:42] < !!FAIL!! > Install of component SharedLibraries result=0x8009000f [01/13/2018 23:10:42] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x8009000f [01/13/2018 23:10:42] [ End of IIS 10.0 Component Based Setup ]


Em resposta à próxima resposta de Yanbing Shi ...

No começo, não consegui visualizar / editar / excluir o d6d986f09a1ee04e24c949879fdb506c_*arquivo. Quando tentei visualizar sua permissão, recebi a mensagem: You do not have permission to view this object's security properties, even as an administrative user. No entanto, consegui alterar a propriedade para "Administradores" e, em seguida, conceder Fullpermissão a esses grupos , e então pude visualizá-la. O arquivo não era um arquivo de texto, mas aproximadamente 28 bytes no arquivo NetFrameworkConfigurationKey. Mudei o arquivo dessa pasta.

Então eu corri net start wase conseguiSystem error 80 has occurred. The file exists.

Não houve nada adicionado ao iis.logarquivo, mas os eventos de erro comuns foram adicionados ao log de eventos do sistema.

Eu apaguei o applicationhost.config.tmparquivo manualmente e executei net start was. Desta vez, eu tenhoSystem error 13 has occurred. The data is invalid.

Desta vez, houve novas entradas para iis.log

[03/18/2018 07:44:54] [ ***** IIS 10.0 Component Based Setup ***** ] [03/18/2018 07:44:54] .\inetsrv\iissetup.exe /install SharedLibraries /nano [03/18/2018 07:44:54] Setting Installation Type to Nano [03/18/2018 07:44:55] Successfully added IIS_IUSRS ACE to DACL at %ProgramData%\Microsoft\Windows\WER\ReportQueue. [03/18/2018 07:44:55] Created NetFrameworkConfigurationKey key containter [03/18/2018 07:44:56] Created NetFrameworkConfigurationKey user key [03/18/2018 07:44:56] Set ACLs on NetFrameworkConfigurationKey [03/18/2018 07:44:56] < !!FAIL!! > Failed to create the iisWasKey key container (result=0x8009000f) [03/18/2018 07:44:56] < !!FAIL!! > Install of component SharedLibraries result=0x8009000f [03/18/2018 07:44:56] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x8009000f [03/18/2018 07:44:56] [ End of IIS 10.0 Component Based Setup ]

Glen Little
fonte
Problema semelhante discutido aqui: stackoverflow.com/questions/47998508/…
Glen Little
Outro relatório semelhante: answers.microsoft.com/en-us/windows/forum/…
Glen Little
E outro relatório: social.msdn.microsoft.com/Forums/vstudio/en-US/…
Glen Little
Outra: serverfault.com/questions/644833/… Nenhuma delas possui uma resposta satisfatória.
Glen Little

Respostas:

9

A falha ocorreu porque o WAS não pôde acessar as chaves da máquina durante a inicialização. Na primeira inicialização após a atualização, o WAS tentará criar novas chaves de máquina, se não houver nenhuma, ou consultará as chaves de máquina antigas deixadas no sistema operacional antigo. Nesse caso, existem chaves de máquina antigas, mas infelizmente o WAS não pode acessá-las por algum motivo pouco claro. Essas chaves de máquina são usadas para criptografar informações confidenciais em applicationHost.config ou web.config (por exemplo, senha do usuário). O WAS não poderá iniciar se não houver uma chave de máquina que possa ser usada.

As etapas a seguir para excluir várias chaves de máquina usadas pelo IIS podem ajudar a permitir a inicialização do WAS - o WAS simplesmente recriará essas chaves na inicialização.

  1. Vá para a pasta de chaves da máquina RSA: C: \ Usuários \ Todos os Usuários \ Dados de Aplicativos \ Microsoft \ Crypto \ RSA \ MachineKeys
  2. Localize uma chave de máquina (arquivo) cujo nome comece por d6d986f09a1ee04e24c949879fdb506c_ *. Se você o abrir usando o bloco de notas, verá o texto sem formatação "NetFrameworkConfigurationKey".
  3. Faça backup desse arquivo em outra pasta.
  4. Exclua este arquivo.
  5. Seguindo as mesmas etapas que 2-4 para fazer backup e excluir o iisWasKey: 76944fb33636aeddb9590521c2e8815a_ *
  6. Seguindo as mesmas etapas que 2-4 para fazer backup e excluir o iisConfigurationKey: 6de9cb26d2b98c01ec4e9e8b34824aa2_ *
  7. Iniciar manualmente o WAS
    • Abra um prompt de comando em "executar como administrador".
    • início líquido foi
Yanbing Shi
fonte
Obrigado, @ yanbing-shi. Por favor, veja minhas respostas na pergunta.
Glen Little
Fizemos alguns progressos - pelo menos, o NetFrameworkConfigurationKey foi criado com sucesso. Atualizei a resposta com etapas adicionais.
Yanbing Shi
Que bom que a solução alternativa o desbloqueia. Mas a causa raiz ainda não está clara. Definitivamente, algo relacionado às chaves da máquina foi estragado durante a atualização (e o IIS não tem controle). As chaves antigas da máquina foram criadas pelo WAS antes da atualização e a atualização do Windows leva essas chaves para o novo sistema operacional. No entanto, é completamente inesperado que o WAS em execução na conta SYSTEM falhe ao acessar as chaves da máquina criadas anteriormente por ela mesma.
Yanbing Shi
Se você seguiu minhas etapas de solução alternativa e faça backup das três chaves de máquina RSA antigas (1) NetFrameworkConfigurationKey (2) iisWasKey (3) iisConfigurationKey. Eu gostaria que você pudesse me fornecer as seguintes informações: Se você comparar cada chave antiga (o backup) com a nova recriada pelo WAS, elas terão o mesmo nome de arquivo - por exemplo, se a parte "*" (GUID) é a mesmo?
Yanbing Shi
@YanbingShi isso resolveu meu problema, obrigado. Para responder sua pergunta, as novas chaves recriadas tinham o mesmo nome de antes. Eu tive que alterar as permissões dos arquivos-chave para movê-los. Eu já tinha permissão, mas para excluir, em seguida, eu tive que fazer especificamente-los compartilháveis, isto é, clique direito> dar acesso a e clique em Compartilhar
Swagata
4

Para mim, isso começou depois de executar o Windows Update ontem. Atualizações instaladas desde então:

  • Atualização de recurso para Windows 10, versão 1709
  • Atualização para o Windows 10 KB4041994
  • Atualização cumulativa 2018-01 KB4056892

Iniciar o Windows Process Activation Service (WAS) gerou este erro:

Erro 13: Os dados são inválidos.

No log de eventos do sistema:

O Serviço de Ativação de Processo do Windows (WAS) falhou ao executar a inicialização para a instalação offline. O campo de dados contém o número do erro [8007000D].

Não fazia ideia do que estava acontecendo. I verfied minha administration.config, applicationHost.confige redirection.configcontinha os dados esperados.

Tentei reverter para arquivos de configuração com backup automático de C:\inetpub\history, sem resultado.

No final, eu dei esses passos:

  1. Faça backup de todos os arquivos de configuração de C:\Windows\System32\inetsrv\Config.

  2. Excluiu todo o HTTP relacionado desmarcando o seguinte em Recursos do Windows (faça uma captura de tela de quais estão instalados para que você possa reinstalar facilmente os mesmos módulos posteriormente):

    • No .NET Framework 3.5, não desmarque o próprio Framework:
      • Ativação HTTP do WCF
      • Ativação não HTTP do WCF
    • Serviços avançados do .NET Framework 4.7
    • IIS
    • Núcleo da Web host do IIS
    • Serviço de Ativação de Processos do Windows
  3. Reinicie.

  4. Excluiu o conteúdo restante de C:\Windows\System32\inetsrv.
  5. Reinstale todos os recursos desinstalados de cima.
  6. Reinstale o módulo de reconfiguração de URL
  7. Coloque cuidadosamente de volta os elementos relevantes sob os elementos <applicationPools>e <sites>do backup applicationHost.configno recém-criado C:\Windows\System32\inetsrv\Config\applicationHost.config.
  8. Execute um iisresetde um prompt de comando elevado apenas para ter certeza.

E viva, todos os meus sites de desenvolvimento voltaram a funcionar.

Depois disso, comparei o backup e os novos applicationHost.configarquivos e não consegui detectar grandes diferenças. De fato, quando coloquei o backup applicationHost.configno diretório Config e executei outro iisresetainda funcionava, então acho que não era esse arquivo que estava causando o problema.

CodeCaster
fonte
Estou feliz que você conseguiu superar o problema. Eu já fiz a maior parte disso, mas se nada aparecer em breve, posso fazê-lo novamente, seguindo seu caminho com mais cuidado. Enquanto isso, consegui mudar meu desenvolvimento para usar o IIS Express em vez do IIS e isso funciona por enquanto.
Glen Little
******** NÃO SIGA ESTA AVISO ********. MUITO MUITO MAL. Me deixe um dia atrasado no trabalho. CONSELHOS REALMENTE RUIM. Depois de desinstalar o .NET 3.5, você não poderá reinstalá-lo sem muito trabalho. Estou feliz por ter encontrado o seguinte post para corrigir o que aconteceu, seguindo as instruções acima. damirscorner.com/blog/posts/…
Fractal
1

Isso aconteceu comigo também após uma atualização recente do Windows. Desligar e depois ativar o Serviço de Ativação de Processos do Windows nos Recursos do Windows fez o truque para mim. A desativação deste serviço também desativará os seguintes recursos que você deverá ativar novamente:

  • Ativação não HTTP do Windows Communication Foundation
  • Ativação TCP
  • Ativação de tubulação nomeada
  • Ativação do serviço de enfileiramento de mensagens (MSMQ)
Mike DeLange
fonte
1
Desativar o WPAS (APIs de configuração e modelo de processo ativados) e, em seguida, ativá-los não ajudou nesse caso.
Glen Little
1

Você poderia fazer as seguintes verificações

  1. Verifique se você possui esta chave do Registro: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ WAS \ Parameters \ NanoSetup

Eu acredito que deveria existir se você atingir tal falha de inicialização do WAS.

  1. Verifique se você tem um arquivo chamado applicationhost.config.tmp em C: \ windows \ system32 \ inetsrv \ config (a pasta onde está o applicationHost.config).

Este arquivo temporário deve existir também para atingir tal falha.

  1. Abra o iis.log em c: \ windows, role para baixo até o final do arquivo e pesquise os erros mais recentes no log. Agradecemos se você puder colar qualquer mensagem de log de erro aqui.

Agora, suspeito que você verá erros no iis.log. Você pode colar os erros aqui para restringir a causa?

Yanbing Shi
fonte
1-Sim. 2-Sim. Adicionadas entradas de log à pergunta acima.
Glen Little
Isso pode ser interessante: forums.iis.net/p/1148509/1865753.aspx
Glen Little