Les services Windows ne démarrent pas automatiquement?

14

Nous avons eu récemment des problèmes de synchronisation horrible sur nos serveurs Windows Server 2008 R2.

J'ai retracé cela à quelque chose de très simple: le service de temps de Windows n'a pas été démarré! Il est impossible de synchroniser l'heure via NTP lorsque le service de temps n'est pas en cours d'exécution ...

Le service de temps Windows a été configuré pour démarrer "automatiquement" dans le panneau de configuration des services, que j'ai vérifié deux fois et triplement. J'ai également vérifié les journaux des événements et je n'ai vu aucune panne de service ou quelque chose comme ça. En fait, il ressemblait beaucoup au service de temps Windows qui n'a jamais démarré automatiquement après l'installation des mises à jour hebdomadaires de Windows et le redémarrage des serveurs. (cela devrait se produire tous les samedis à 19 h.)

La minute où j'ai commencé le Time Service, l'heure s'est bien synchronisée.

Alors, alors, la question: pourquoi un service configuré pour démarrer "automatiquement" ... ne serait-il pas démarré automatiquement? Cela me semble un peu fou.

Jeff Atwood
la source

Réponses:

11

W32time ne démarre pas automatiquement si le PC n'est pas dans un domaine. Merde Microsoft!

Essayez d'exécuter ceci: sc triggerinfo w32time start/networkon stop/networkoff

ARPcPro
la source
confirmé ici mcbsys.com/techblog/2010/09/… donc j'accepterai votre réponse - merci!
Jeff Atwood
4

Une explication possible, à partir de ce fil :

D'après ce que j'ai compris, le service ne sera essentiellement activé que lorsque vous ou une tâche ou un élément matériel ou réseau, lancerez un événement pour l'activer. Lorsque vous essayez de mettre à jour l'heure, vous appelez le service et déclenchez l'événement «Démarrer le service xyz». Il peut également désactiver le service lorsque vous avez terminé. C'est très simplifié. C'est une des raisons pour lesquelles sept est plus rapide, car de nombreux services ne s'exécutent qu'en cas de besoin au lieu de s'exécuter tout le temps en attendant que quelque chose les utilise. En effet, vous n'avez pas à essayer de décider des services dont vous avez besoin ou non, ils peuvent prendre soin d'eux-mêmes.

Il parle du nouveau noyau dans Windows 7.

Étant donné que Windows Server 2008 R2 et Windows 7 partagent le même noyau, je me demande si la résolution est la même?

Ils recommandent de régler le service sur démarrage automatique / différé pour résoudre ce problème.

Je continue de dire qu'il est complètement fou qu'un service défini sur automatique ne soit pas démarré ... et je ne comprends pas complètement la différence sémantique entre un démarrage automatique retardé et un démarrage automatique, mais si cela fonctionne, je suppose que je ne se plaindra pas.

Jeff Atwood
la source
Sur Windows 7, cela peut être le cas. J'ai du mal à croire qu'ils auraient le même système dans win 2k8, en particulier avec une machine sur un domaine car la synchronisation de l'heure est si vitale pour l'authentification.
Zypher
eh bien, j'ai confirmé à 100% qu'il s'agit d'un service défini sur Automatique qui ne fonctionnait pas inexplicablement. Ce qui est étrange, c'est que tous les autres services définis sur Automatique (démarrage différé ou non), sauf "Protection logicielle", sont en cours d'exécution. Quelle est la particularité de w32time qui l'empêche de s'exécuter automatiquement?
Jeff Atwood
1

Malheureusement, avec le temps Windows, vous avez manuellement activé la journalisation .

Il n'y a pas de bonne réponse à «ce qui empêcherait un service de démarrer automatiquement». La seule vraie raison est qu'une dépendance n'a pas démarré correctement ou qu'il y a eu une sorte de plantage dans le service au démarrage. Et sans journaux, bien votre supposition est aussi bonne que la nôtre.

Je suggérerais d'activer la journalisation de l'heure Windows pour les prochains cycles de correctifs. Si le service arrive, vous êtes tous bons, sinon, vous avez quelque chose à travailler.

Tout comme une note, j'ai vu plus d'une fois que les services décident de ne pas démarrer sans raison valable après un correctif, mais fonctionnent très bien après ce premier redémarrage.


A commencé à écrire un commentaire, puis a manqué d'espace.

Vous obtiendrez en fait des informations de ce journal.

  1. S'il n'y a aucun journal, il n'essaie même pas de démarrer. Et vous pouvez commencer des recherches à partir de là, chaque petit morceau d'information aide sur ces types de problèmes.

  2. Comme il s'agit d'un journal de débogage que vous allumez avec le lien ci-dessus, vous devriez obtenir quelque chose s'il essaie de démarrer. Vous aurez au moins une meilleure idée de la raison pour laquelle il ne démarre pas correctement.

Vous avez découvert l'une des grandes difficultés d'être un administrateur système: vous avez besoin de journaux pour vous dire où commencer à chercher, mais le service ne parvient pas à un point tel qu'il peut générer des journaux. Un poulet classique et le problème des œufs.

Zypher
la source
Je ne pense pas que la journalisation aiderait nécessairement dans ce cas, car il ne fonctionne même pas pour se connecter. Et, une fois que le service fonctionne, il fonctionne très bien! La vraie question est: pourquoi ne fonctionne-t-il pas ?
Jeff Atwood
Êtes-vous sur un domaine? Quelles sont les règles de temps pour votre domaine?
Trevoke
0

Merci, j'ai mis certains services qui ne démarraient pas sur Windows Server 2016 à retardé et cela a fonctionné, mais je ne pouvais pas le faire pour le service antivirus, car il est protégé contre les modifications.

Cependant, j'ai trouvé cette solution de contournement, qui a fonctionné, même si c'était pour 2008 R2: https://support.microsoft.com/en-us/help/922918/a-service-does-not-start-and- les événements-7000-et-7011-sont-connectés-au-serveur-windows-2003-serveur-windows-2008-et-serveur-windows-2008-r2

Cela fera probablement démarrer n'importe quel service, sans les mettre en démarrage différé. Cela a fonctionné pour l'antivirus, c'est sûr.

Je vais coller ici la partie la plus utile de la solution:

Pour contourner ce problème, modifiez le Registre pour augmenter la valeur de délai d'expiration par défaut pour le gestionnaire de contrôle des services. Pour augmenter cette valeur à 60 secondes, procédez comme suit:

Click Start, click Run, type regedit, and then click OK.
Locate and then click the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
In the right pane, locate the ServicesPipeTimeout entry.

Note: If the ServicesPipeTimeout entry does not exist, you must create it. To do this, follow these steps:

    On the Edit menu, point to New, and then click DWORD Value.
    Type ServicesPipeTimeout, and then press ENTER. 
Right-click ServicesPipeTimeout, and then click Modify.
Click Decimal, type 60000, and then click OK.

This value represents the time in milliseconds before a service times out.
Restart the computer.
fsr
la source