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

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

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

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

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

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

4 ответа

Решение

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

Тем не менее, я нашел этот обходной путь, который работал, даже если это было для 2008 R2: https://support.microsoft.com/en-us/help/922918/a-service-does-not-start-and-events-7000-and-7011-are-logged-in-windows-server-2003-windows-server-2008-and-windows-server-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.
Другие вопросы по тегам