Ошибка службы времени "w32tm /resync Access is denied. (0x80070005)"
Поломалась служба времени, во время очередного обновления перестала запускаться. Выполняю команду:
net start w32time
Получаю:
System error 1290 has occurred. The service start failed since one or more services in the same process have an incompatible service SID type setting. A service with restricted service SID type can only coexist in the same process with other services with a restricted SID type. If the service SID type for this service was just configured, the hosting process must be restarted in order to start this service.
Выносим службу в отдельный процесс:
sc config w32time type= own
Должны получить [SC] ChangeServiceConfig SUCCESS
После чего служба запускается, но при этом начинает ругается dcdiag.
Invalid service type: w32time on DCSERVER, current value WIN32_OWN_PROCESS, expected value WIN32_SHARE_PROCESS
При попытке выполнить любой запрос, например w32tm /query /status вываливается ошибка закрытого доступа.
w32tm /query /status Access is denied. (0x80070005)
Решение оказалось нетривиальным:
net stop w32time w32tm /unregister regsvr32 /u w32time.dll w32tm /register
Перезапустим сервер. После убедимся, что сервис снова установлен в расшаренном режиме, наберем:
sc query w32time
В ответ должны получить WIN32_OWN_PROCESS:
SERVICE_NAME: w32time TYPE : 20 WIN32_SHARE_PROCESS STATE : 1 STOPPED (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0
После чего, снова перезапускаем сервер, и запускаем команду
sc query w32time
Убедимся что служба запущена:
SERVICE_NAME: w32time TYPE : 20 WIN32_SHARE_PROCESS STATE : 4 RUNNING (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0
Затем как обычно, настраиваем контроллер на получение времени из внешних источников:
w32tm /config /manualpeerlist:"ntp1.stratum2.ru,0x8 ntp2.stratum2.ru,0x8 ntp3.stratum2.ru,0x8″ /syncfromflags:manual /reliable:yes /update
Внесем изменения в конфигурацию:
w32tm /config /update
Выполним синхронизацию командой:
w32tm /resync /rediscover
Отобразить текущие источники синхронизации и их статус можно следующей командой:
w32tm /query /peers
Статус синхронизации контроллеров домена в домене:
w32tm /monitor