Échec du service d'activation de processus Windows - Windows 10

9

Le service d'activation de processus Windows (WAS) ne démarre plus sur mon PC Windows 10. Par conséquent, IIS ne démarre pas. Je ne sais pas trop quand cela s'est produit, mais probablement au cours du dernier mois.

Au démarrage, j'obtiens maintenant une série de 4 événements d'erreur dans le journal système:

WAS 5215: le service d'activation de processus Windows (WAS) n'a pas pu exécuter l'initialisation pour la configuration hors ligne. Le champ de données contient le numéro d'erreur. [Champ de données: 50000780]

WAS 5005: Le service d'activation de processus Windows (WAS) s'arrête car il a rencontré une erreur. Le champ de données contient le numéro d'erreur. [Champ de données: 50000780]

Service Control Manager 7023: Le service WAS s'est terminé avec l'erreur suivante: Le fichier existe.

Gestionnaire de contrôle des services 7001: le service W3SVC dépend du service WAS qui n'a pas pu démarrer en raison de l'erreur suivante: Le fichier existe.

Je n'ai pas beaucoup de références à ce type d'erreur avec l'erreur que le fichier existe .

(J'ai essayé d'utiliser ProcMon pour essayer d'identifier le fichier auquel il se réfère, mais il refuse absolument de s'exécuter.)


Edit ... a finalement fait fonctionner ProcMon (après avoir extrait la version 64 bits à l'aide de VS2017). Il s'avère que le fichier à l'origine du problème ci-dessus était le fichier "applicationhost.config.tmp" dans le C:\Windows\System32\inetsrv\Configdossier. La suppression de ce fichier a permis au processus de se poursuivre.

Maintenant, les première et troisième erreurs sont:

WAS 5215: le service d'activation de processus Windows (WAS) n'a pas pu exécuter l'initialisation pour la configuration hors ligne. Le champ de données contient le numéro d'erreur. [Champ de données: 0D000780]

Service Control Manager 7023: Le service Windows Process Activation Service s'est terminé avec l'erreur suivante: Les données ne sont pas valides.


Selon la réponse de Yanbing Shi, voici les lignes les plus récentes du iis.logfichier:

[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 réponse à la prochaine réponse de Yanbing Shi ...

Au début, je n'ai pas pu afficher / modifier / supprimer le d6d986f09a1ee04e24c949879fdb506c_*fichier. Lorsque j'ai tenté d'afficher son autorisation, j'ai reçu le message: You do not have permission to view this object's security properties, even as an administrative user. j'étais cependant en mesure de changer la propriété en «Administrateurs», puis de donner l' Fullautorisation à ce groupe, puis je pouvais l'afficher. Le fichier n'était pas un fichier texte, mais il contient environ 28 octets NetFrameworkConfigurationKey. J'ai déplacé le fichier hors de ce dossier.

J'ai ensuite couru net start waset j'aiSystem error 80 has occurred. The file exists.

Rien n'a été ajouté au iis.logfichier, mais les événements d'erreur habituels ont été ajoutés au journal des événements système.

J'ai ensuite supprimé manuellement le applicationhost.config.tmpfichier et j'ai couru net start was. Cette fois, j'aiSystem error 13 has occurred. The data is invalid.

Cette fois, il y avait de nouvelles entrées pour 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
la source
Glen Little
Un autre rapport similaire: answers.microsoft.com/en-us/windows/forum/…
Glen Little
Et un autre rapport: social.msdn.microsoft.com/Forums/vstudio/en-US/…
Glen Little
Un autre: serverfault.com/questions/644833/… Aucun de ceux-ci n'a une réponse satisfaisante.
Glen Little

Réponses:

9

L'échec s'est produit car WAS n'a pas pu accéder aux clés de l'ordinateur au démarrage. Lors du premier démarrage après la mise à niveau, WAS essaiera de créer de nouvelles clés d'ordinateur s'il n'y en a pas, ou interrogera les anciennes clés d'ordinateur laissées par l'ancien système d'exploitation. Dans ce cas, il existe d'anciennes clés de machine, mais WAS ne peut malheureusement pas y accéder pour une raison peu claire. Ces clés de machine sont utilisées pour crypter des informations sensibles dans applicationHost.config ou web.config (par exemple, mot de passe utilisateur). WAS ne pourra pas démarrer s'il n'y a pas de clé machine qu'il puisse utiliser.

Les étapes suivantes de suppression de plusieurs clés d'ordinateur utilisées par IIS peuvent aider à permettre à WAS de démarrer - WAS recréera simplement ces clés au démarrage.

  1. Accédez au dossier des clés de votre machine RSA: C: \ Users \ All Users \ Application Data \ Microsoft \ Crypto \ RSA \ MachineKeys
  2. Recherchez une clé machine (fichier) dont le nom commence par d6d986f09a1ee04e24c949879fdb506c_ *. Si vous l'ouvrez à l'aide du bloc-notes, vous devriez voir le texte brut "NetFrameworkConfigurationKey".
  3. Sauvegardez ce fichier dans un autre dossier.
  4. Supprimez ce fichier.
  5. Suivez les mêmes étapes que 2-4 pour sauvegarder et supprimer iisWasKey: 76944fb33636aeddb9590521c2e8815a_ *
  6. Suivez les mêmes étapes que 2-4 pour sauvegarder et supprimer iisConfigurationKey: 6de9cb26d2b98c01ec4e9e8b34824aa2_ *
  7. Démarrer manuellement WAS
    • Ouvrez une invite de commande via "exécuter en tant qu'administrateur".
    • le démarrage net était
Yanbing Shi
la source
Merci, @ yanbing-shi. Veuillez voir mes réponses dans la question.
Glen Little
Nous avons fait quelques progrès - au moins NetFrameworkConfigurationKey a été créé avec succès. J'ai mis à jour la réponse avec des étapes supplémentaires.
Yanbing Shi
Heureux que la solution de contournement vous débloque. Mais la cause profonde n'est pas encore claire. Certainement quelque chose lié aux clés de la machine a été gâché pendant la mise à niveau (et IIS n'a aucun contrôle dessus). Les anciennes clés de machine ont été créées par WAS avant la mise à niveau et la mise à niveau de Windows transporte ces clés vers le nouveau système d'exploitation. Cependant, il est totalement inattendu que WAS s'exécutant sous un compte SYSTEM ne puisse pas accéder aux clés de l'ordinateur précédemment créées par lui-même.
Yanbing Shi
Si vous avez suivi mes étapes de contournement et sauvegardé les trois anciennes clés de machine RSA (1) NetFrameworkConfigurationKey (2) iisWasKey (3) iisConfigurationKey. Je vous serais reconnaissant de bien vouloir me fournir les informations suivantes: Si vous comparez chaque ancienne clé (la sauvegarde) avec la nouvelle recréée par WAS, ont-elles le même nom de fichier - par exemple, si la partie "*" (GUID) est la même?
Yanbing Shi
@YanbingShi cela a résolu mon problème, merci. Pour répondre à votre question, les nouvelles clés recréées portaient le même nom qu'auparavant. J'ai dû changer les autorisations des fichiers clés pour les déplacer. J'avais déjà la permission mais pour supprimer, je devais les rendre spécifiquement partageables, c'est-à-dire clic droit> donner accès puis cliquer sur partager
Swagata
4

Pour moi, cela a commencé après l'exécution de Windows Update hier. Mises à jour installées depuis lors:

  • Mise à jour des fonctionnalités vers Windows 10, version 1709
  • Mise à jour pour Windows 10 KB4041994
  • Mise à jour cumulative 2018-01 KB4056892

Le démarrage du service d'activation de processus Windows (WAS) a généré cette erreur:

Erreur 13: les données ne sont pas valides.

Depuis le journal des événements système:

Le service d'activation de processus Windows (WAS) n'a pas pu exécuter l'initialisation pour la configuration hors ligne. Le champ de données contient le numéro d'erreur [8007000D].

Aucune idée de ce qui se passait. J'ai vérifié mon administration.config, applicationHost.configetredirection.config contenait les données attendues.

J'ai essayé de revenir aux fichiers de configuration sauvegardés automatiquement à partir de C:\inetpub\history , sans résultat.

En fin de compte, j'ai pris ces mesures:

  1. Sauvegardez tous les fichiers de configuration à partir de C:\Windows\System32\inetsrv\Config.

  2. Supprimez tout ce qui est lié à HTTP en décochant les éléments suivants des fonctionnalités de Windows (prenez une capture d'écran de ceux qui sont installés afin de pouvoir réinstaller facilement les mêmes modules par la suite):

    • Sous .NET Framework 3.5, ne décochez pas le Framework lui-même:
      • Activation HTTP WCF
      • Activation non HTTP WCF
    • Services avancés .NET Framework 4.7
    • IIS
    • IIS Hostable Web Core
    • Service d'activation de processus Windows
  3. Redémarrez.

  4. Supprimé le contenu restant de C:\Windows\System32\inetsrv.
  5. Réinstallez toutes les fonctionnalités désinstallées ci-dessus.
  6. Réinstallez le module de réécriture d'URL
  7. Remettez soigneusement les éléments pertinents sous <applicationPools>et les <sites>éléments de la sauvegarde applicationHost.configdans la nouvelle création C:\Windows\System32\inetsrv\Config\applicationHost.config.
  8. Exécutez un à iisresetpartir d'une invite de commande élevée juste pour être sûr.

Et hourra, tous mes sites de développement sont à nouveau en place.

Après cela, j'ai comparé les applicationHost.configfichiers sauvegardés et les nouveaux fichiers et je n'ai pas remarqué de différences majeures. En fait, lorsque j'ai déposé le fichier sauvegardé applicationHost.configdans le répertoire Config et exécuté un autre, iisresettout fonctionnait toujours, donc je suppose que ce n'est pas ce fichier qui a causé le problème après tout.

CodeCaster
la source
Je suis heureux que vous ayez pu surmonter le problème. J'ai déjà fait la plupart de cela, mais si rien n'apparaît bientôt, je peux le faire à nouveau, en suivant votre chemin plus attentivement. En attendant, j'ai pu changer mon développement pour utiliser IIS Express plutôt que IIS et cela fonctionne pour l'instant.
Glen Little
******** NE SUIVEZ PAS CE CONSEIL ********. TRÈS TRÈS MAUVAIS. Donnez-moi un jour de retard au travail. VRAIMENT MAUVAIS CONSEILS. Une fois que vous désinstallez .NET 3.5, vous ne pouvez pas le réinstaller sans beaucoup de travail. Je suis juste content d'avoir trouvé le message suivant pour corriger ce qui s'est passé en suivant les instructions ci-dessus. damirscorner.com/blog/posts/…
Fractal
1

Cela m'est également arrivé après une récente mise à jour de Windows. Désactiver puis activer le service d'activation de processus Windows dans les fonctionnalités Windows a fait l'affaire pour moi. La désactivation de ce service désactivera également les fonctionnalités suivantes que vous devrez également réactiver:

  • Activation non HTTP de Windows Communication Foundation
  • Activation TCP
  • Activation du canal nommé
  • Activation de Message Queuing (MSMQ)
Mike DeLange
la source
1
Désactiver WPAS (les API de configuration et le modèle de processus étaient activés), puis les activer n'a pas aidé dans ce cas.
Glen Little
1

Pourriez-vous faire les vérifications suivantes

  1. Vérifiez si vous disposez de cette clé de Registre: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ WAS \ Parameters \ NanoSetup

Je crois que cela devrait exister si vous rencontrez un tel échec de démarrage WAS.

  1. Vérifiez si vous avez un fichier nommé applicationhost.config.tmp sous C: \ windows \ system32 \ inetsrv \ config (le dossier où se trouve votre applicationHost.config).

Ce fichier temporaire devrait également exister pour atteindre un tel échec.

  1. Ouvrez iis.log dans c: \ windows, faites défiler jusqu'à la fin du fichier et recherchez les erreurs les plus récentes dans le journal. Nous apprécions que vous puissiez coller un message du journal des erreurs ici.

Maintenant, je pense que vous verrez des erreurs dans iis.log. Pourriez-vous coller les erreurs ici pour en limiter la cause?

Yanbing Shi
la source
1-Oui. 2-Oui. Ajout d'entrées de journal à la question ci-dessus.
Glen Little
Cela peut être intéressant: forums.iis.net/p/1148509/1865753.aspx
Glen Little