Службы Windows не запускаются автоматически?

14

В последнее время у нас были некоторые неприятные проблемы с синхронизацией времени на наших серверах Windows Server 2008 R2.

Я проследил это до чего-то очень простого: служба времени Windows не была запущена! Время не может синхронизироваться через NTP, когда служба времени не работает ...

Служба времени Windows была настроена на автоматический запуск в панели управления службами, которую я дважды проверял. Я также проверил журналы событий, и я не видел никаких сбоев службы или что-то подобное. На самом деле это выглядело чертовски похоже на то, что служба времени Windows никогда не запускалась автоматически после установки еженедельных обновлений Windows и перезагрузки серверов. (это должно происходить каждую субботу в 7 часов вечера.)

В ту минуту, когда я начал Службу Времени, время синхронизировалось нормально.

Итак, вопрос: почему служба, настроенная на автоматический запуск ... не запускается автоматически? Это кажется мне безумным.

Джефф Этвуд
источник

Ответы:

11

W32time не запустится автоматически, если компьютер не находится в домене. Черт, Microsoft!

Попробуйте запустить это: sc triggerinfo w32time start/networkon stop/networkoff

ARPcPro
источник
подтвердил здесь mcbsys.com/techblog/2010/09/… так что я приму ваш ответ - спасибо!
Джефф Этвуд
4

Одно из возможных объяснений из этой темы :

Как я понял, в основном, служба не будет включена, пока вы, или задача, или аппаратное обеспечение, или сеть, не запустите событие, чтобы включить ее. Когда вы пытаетесь обновить время, вы вызываете сервис и запускаете событие «Запустить сервис xyz». Он также может отключить службу, когда закончите. Это очень упрощено. Это одна из причин, почему семь работает быстрее, потому что многие службы работают только при необходимости, а не работают все время, ожидая, что что-то их использует. По сути, вам не нужно пытаться решить, какие услуги вам нужны или нет, они могут позаботиться о себе.

Он говорит о новом ядре в Windows 7.

Поскольку Windows Server 2008 R2 и Windows 7 используют одно и то же ядро, мне интересно, одинаковое ли разрешение?

Они рекомендуют установить сервис на автоматический / отложенный запуск чтобы это исправить.

Я до сих пор считаю совершенно безумным, что служба, настроенная на автоматический, не будет запущена ... и я не до конца понимаю семантическую разницу между отложенным автоматическим запуском и автоматическим запуском, но если это сработает, я думаю, не буду жаловаться

Джефф Этвуд
источник
Хотя на Windows 7 это может быть так. Мне трудно поверить, что в win 2k8 у них будет одинаковая система, особенно с машиной в домене, поскольку синхронизация времени так важна для аутентификации.
Zypher
хорошо, я на 100% подтвердил, что это сервис, установленный на автоматический, который по необъяснимым причинам НЕ работает. Странно то, что все другие сервисы, установленные на Автоматический (с отложенным запуском или нет), за исключением «Защита программного обеспечения», работают .. Что особенного в w32time, который не позволяет ему запускаться автоматически?
Джефф Этвуд
1

К сожалению, со временем Windows вы вручную включили ведение журнала .

Нет хорошего ответа на вопрос «что может привести к автоматическому запуску службы». Единственная реальная причина в том, что зависимость не запустилась правильно, или произошел какой-то сбой в сервисе при запуске. И без логов, ваше предположение так же хорошо, как и наше.

Я бы предложил включить ведение журнала времени Windows для следующих нескольких циклов исправлений. Если сервис работает, у вас все хорошо, если нет, вам нечем работать.

Как примечание, я уже не раз видел, как сервисы решают просто не запускаться без какой-либо веской причины после исправления, а работают нормально после первой перезагрузки.


Начал писать комментарий, потом не хватило места.

Вы бы фактически получили некоторую информацию из этого журнала.

  1. Если журнала вообще нет, он даже не пытается запустить. И вы можете начать исследования оттуда, каждый маленький кусочек информации помогает в решении подобных проблем.

  2. Поскольку это журнал отладки, который вы включаете с помощью вышеуказанной ссылки, вы должны получить что-то, если он попытается запустить. По крайней мере, у вас будет лучшее представление о том, почему он не запускается успешно.

Вы обнаружили одну из самых больших проблем того, чтобы быть системным администратором: вам нужны журналы, чтобы указать, с чего начать поиск, но служба не доходит до того, что она может генерировать журналы. Классическая курица и проблема с яйцом.

Zypher
источник
Я не думаю, что регистрация обязательно поможет в этом случае, потому что она даже не запускается для регистрации. И, как только служба запущена, она прекрасно работает! Реальный вопрос, почему он не работает?
Джефф Этвуд
Вы в домене? Какие временные правила для вашего домена?
Trevoke
0

Спасибо, я настроил некоторые службы, которые не запускались на Windows Server 2016, с задержкой, и это работало, но я не смог сделать это для антивирусной службы, так как она защищена от изменений.

Тем не менее, я нашел этот обходной путь, который работал, даже если это было для 2008 R2: https://support.microsoft.com/en-us/help/922918/a-service-does-not-start-and- события-7000-и-7011-которые-авторизованы-Windows-сервер-2003-Windows-сервер-2008-и-Windows-сервер-2008-r2

Вероятно, это приведет к запуску любого сервиса, не устанавливая их для отложенного запуска. Это сработало для антивируса, это точно.

Я вставлю самую полезную часть работы здесь:

Чтобы обойти эту проблему, измените реестр, чтобы увеличить значение времени ожидания по умолчанию для диспетчера управления службами. Чтобы увеличить это значение до 60 секунд, выполните следующие действия.

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
источник