Servicio de activación de procesos de Windows que falla

9

El Servicio de activación de procesos de Windows (WAS) ya no se iniciará en mi PC con Windows 10. Como resultado, IIS no se iniciará. No estoy muy seguro de cuándo sucedió, pero probablemente en el último mes.

Durante el inicio, ahora obtengo una serie de 4 eventos de error en el registro del sistema:

WAS 5215: el Servicio de activación de procesos de Windows (WAS) no pudo ejecutar la inicialización para la configuración fuera de línea. El campo de datos contiene un error numérico. [Campo de datos: 50000780]

WAS 5005: el Servicio de activación de procesos de Windows (WAS) se está deteniendo porque encontró un error. El campo de datos contiene un error numérico. [Campo de datos: 50000780]

Service Control Manager 7023: el servicio WAS finalizó con el siguiente error: el archivo existe.

Service Control Manager 7001: el servicio W3SVC depende del servicio WAS que no pudo iniciarse debido al siguiente error: el archivo existe.

No tengo muchas referencias a este tipo de error con el error que existe el archivo .

(Intenté usar ProcMon para tratar de identificar a qué archivo se refiere, pero se niega absolutamente a ejecutarse).


Editar ... finalmente consiguió que ProcMon funcionara (después de extraer la versión de 64 bits usando VS2017). Resulta que el archivo que causó el problema anterior era el archivo "applicationhost.config.tmp" en la C:\Windows\System32\inetsrv\Configcarpeta. Eliminar ese archivo permitió que el proceso continuara más.

Ahora, el primer y tercer error son:

WAS 5215: el Servicio de activación de procesos de Windows (WAS) no pudo ejecutar la inicialización para la configuración fuera de línea. El campo de datos contiene un error numérico. [Campo de datos: 0D000780]

Service Control Manager 7023: el servicio del Servicio de activación de procesos de Windows finalizó con el siguiente error: Los datos no son válidos.


Según la respuesta de Yanbing Shi, aquí están las líneas más recientes del iis.logarchivo:

[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 ]


En respuesta a la siguiente respuesta de Yanbing Shi ...

Al principio, no pude ver / editar / eliminar el d6d986f09a1ee04e24c949879fdb506c_*archivo. Cuando intenté ver su permiso, recibí el mensaje: You do not have permission to view this object's security properties, even as an administrative user. Sin embargo, pude cambiar la propiedad a "Administradores", luego le di Fullpermiso a ese grupo y luego pude verlo. El archivo no era un archivo de texto, pero sí tiene unos 28 bytes NetFrameworkConfigurationKey. Saqué el archivo de esa carpeta.

Entonces corrí net start wasy conseguíSystem error 80 has occurred. The file exists.

No se agregó nada al iis.logarchivo, pero los eventos de error habituales se agregaron al registro de eventos del sistema.

Luego eliminé manualmente el applicationhost.config.tmparchivo y corrí net start was. Esta vez tengoSystem error 13 has occurred. The data is invalid.

Esta vez, hubo nuevas 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
fuente
Problema similar discutido aquí: stackoverflow.com/questions/47998508/…
Glen Little
Otro informe similar: answers.microsoft.com/en-us/windows/forum/…
Glen Little
Otro: serverfault.com/questions/644833/… Ninguno de estos tiene una respuesta satisfactoria.
Glen Little

Respuestas:

9

El error ocurrió porque WAS no pudo acceder a las teclas de la máquina durante el inicio. En el primer inicio después de la actualización, WAS intentará crear nuevas claves de máquina si no hay ninguna, o consultará las claves de máquina antiguas que quedan del sistema operativo anterior. En este caso, existen claves antiguas de la máquina, pero lamentablemente WAS no puede acceder a ellas por alguna razón poco clara. Estas claves de máquina se utilizan para cifrar información confidencial en applicationHost.config o web.config (por ejemplo, contraseña de usuario). WAS no podrá iniciarse si no hay una clave de máquina que pueda usar.

Los siguientes pasos para eliminar varias claves de máquina utilizadas por IIS podrían ayudar a permitir que se inicie WAS: WAS simplemente recreará estas claves al inicio.

  1. Vaya a la carpeta de claves de su máquina RSA: C: \ Users \ All Users \ Application Data \ Microsoft \ Crypto \ RSA \ MachineKeys
  2. Busque una clave de máquina (archivo) cuyo nombre comience con d6d986f09a1ee04e24c949879fdb506c_ *. Si lo abre con el bloc de notas, debería ver el texto sin formato "NetFrameworkConfigurationKey".
  3. Haga una copia de seguridad de este archivo en alguna otra carpeta.
  4. Eliminar este archivo
  5. Siga los mismos pasos que 2-4 para hacer una copia de seguridad y eliminar iisWasKey: 76944fb33636aeddb9590521c2e8815a_ *
  6. Siguiendo los mismos pasos que 2-4 para hacer una copia de seguridad y eliminar iisConfigurationKey: 6de9cb26d2b98c01ec4e9e8b34824aa2_ *
  7. Inicie manualmente WAS
    • Abra un símbolo del sistema a través de "ejecutar como administrador".
    • inicio neto fue
Yanbing Shi
fuente
Gracias, @ yanbing-shi. Por favor vea mis respuestas en la pregunta.
Glen Little
Hicimos algunos progresos: al menos NetFrameworkConfigurationKey se creó con éxito. Actualicé la respuesta con pasos adicionales.
Yanbing Shi
Me alegra que la solución te desbloquee. Pero la causa raíz aún no está clara. Definitivamente, algo relacionado con las teclas de la máquina se estropeó durante la actualización (e IIS no tiene control sobre ello). WAS creó las antiguas claves de máquina antes de la actualización, y la actualización de Windows lleva estas claves al nuevo sistema operativo. Sin embargo, es completamente inesperado que WAS ejecutándose bajo la cuenta SYSTEM no pueda acceder a las claves de la máquina previamente creadas por sí mismo.
Yanbing Shi
Si siguió los pasos de mi solución alternativa y realizó una copia de seguridad de las tres claves antiguas de máquina RSA (1) NetFrameworkConfigurationKey (2) iisWasKey (3) iisConfigurationKey. Le agradecería que me proporcionara la siguiente información: Si compara cada clave antigua (la copia de seguridad) con la nueva recreada por WAS, ¿tienen el mismo nombre de archivo? Por ejemplo, si la parte "*" (GUID) es la ¿mismo?
Yanbing Shi
@YanbingShi esto resolvió mi problema, gracias. Para responder a su pregunta, las nuevas claves recreadas tenían el mismo nombre que antes. Tuve que cambiar los permisos de los archivos clave para moverlos. Ya tenía permiso, pero para eliminar, tuve que hacerlos específicamente compartibles, es decir, hacer clic derecho> dar acceso y luego hacer clic en compartir
Swagata
4

Para mí, esto comenzó después de ejecutar Windows Update ayer. Actualizaciones instaladas desde entonces:

  • Actualización de características a Windows 10, versión 1709
  • Actualización para Windows 10 KB4041994
  • Actualización acumulativa 2018-01 KB4056892

Al iniciar el Servicio de activación de procesos de Windows (WAS) se produjo este error:

Error 13: los datos no son válidos.

Desde el registro de eventos del sistema:

El Servicio de activación de procesos de Windows (WAS) no pudo ejecutar la inicialización para la configuración sin conexión. El campo de datos contiene el número de error [8007000D].

No tengo idea de lo que estaba pasando. Verifiqué mi administration.config, applicationHost.configy redirection.configcontuve los datos esperados.

Intenté volver a hacer una copia de seguridad automática de los archivos de configuración C:\inetpub\history, sin resultado.

Al final tomé esos pasos:

  1. Copia de seguridad de todos los archivos de configuración de C:\Windows\System32\inetsrv\Config.

  2. Eliminó todo lo relacionado con HTTP al desmarcar lo siguiente de las características de Windows (tome una captura de pantalla de cuáles están instaladas para que pueda reinstalar fácilmente los mismos módulos después):

    • En .NET Framework 3.5, no desactive el Framework en sí:
      • Activación HTTP WCF
      • Activación WCF no HTTP
    • .NET Framework 4.7 Servicios avanzados
    • IIS
    • IIS Hostable Web Core
    • Servicio de activación de procesos de Windows
  3. Reiniciar.

  4. Eliminado el contenido restante de C:\Windows\System32\inetsrv.
  5. Vuelva a instalar todas las funciones desinstaladas desde arriba.
  6. Vuelva a instalar el módulo de reescritura de URL
  7. Ponga cuidadosamente los elementos relevantes debajo de los elementos <applicationPools>y <sites>desde la copia de seguridad applicationHost.configen los recién creados C:\Windows\System32\inetsrv\Config\applicationHost.config.
  8. Ejecute un iisresetcomando desde un símbolo del sistema elevado solo para estar seguro.

Y hurra, todos mis sitios de desarrollo vuelven a funcionar.

Después de esto, comparé los applicationHost.configarchivos respaldados y los nuevos y no pude detectar ninguna diferencia importante. De hecho, cuando solté la copia de seguridad applicationHost.configen el directorio de configuración y ejecuté otro, iisresettodo funcionó, así que supongo que no fue ese archivo el que causó el problema después de todo.

CodeCaster
fuente
Me alegra que hayas podido superar el problema. Anteriormente hice la mayor parte de esto, pero si no aparece nada pronto, puedo hacerlo nuevamente, siguiendo su camino con más cuidado. Mientras tanto, pude cambiar mi desarrollo para usar IIS Express en lugar de IIS y eso funciona por ahora.
Glen Little
******** NO SIGA ESTE AVISO ********. MUY MUY MAL. Ponme un día atrás en el trabajo. Consejos realmente malos. Una vez que desinstala .NET 3.5 no puede reinstalarlo sin mucho trabajo. Me alegra haber encontrado la siguiente publicación para arreglar lo que sucedió siguiendo las instrucciones anteriores. damirscorner.com/blog/posts/…
Fractal
1

Esto me sucedió a mí también después de una reciente actualización de Windows. Desactivar y luego activar el Servicio de activación de procesos de Windows en las características de Windows fue el truco para mí. Desactivar este servicio también desactivará las siguientes características que también tendrá que volver a activar:

  • Activación no HTTP de Windows Communication Foundation
  • Activación TCP
  • Activación de tubería con nombre
  • Activación de Message Queue Server (MSMQ)
Mike DeLange
fuente
1
Desactivar WPAS (API de configuración y Modelo de proceso estaban activados) y luego activarlos no ayudó en este caso.
Glen Little
1

¿Podrías hacer las siguientes verificaciones?

  1. Compruebe si tiene esta clave de registro: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ WAS \ Parameters \ NanoSetup

Creo que debería existir si golpeas tal falla de inicio de WAS.

  1. Compruebe si tiene un archivo llamado applicationhost.config.tmp en C: \ windows \ system32 \ inetsrv \ config (la carpeta donde se encuentra su applicationHost.config).

Este archivo temporal también debería existir para alcanzar tal falla.

  1. Abra iis.log en c: \ windows, desplácese hacia abajo hasta el final del archivo y busque los errores más recientes en el registro. Agradecemos que pueda pegar cualquier mensaje de registro de error aquí.

Ahora sospecho que verá errores en iis.log. ¿Podría pegar los errores aquí para reducir la causa?

Yanbing Shi
fuente
1-Sí 2-Sí Se agregaron entradas de registro a la pregunta anterior.
Glen Little
Esto puede ser de interés: foros.iis.net/p/1148509/1865753.aspx
Glen Little