Заметки сисадмина
Назад

Ошибка службы времени "w32tm /resync Access is denied. (0x80070005)"

Опубликовано: 27.08.2014
Время на чтение: 16 мин
9
6024

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

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
Поделиться
Похожие записи
Комментарии:
  • Nikita
    Опубликовано: 17.02.2015 Ответить на сообщение

    Спасибо, 3 дня не мог понять, почему у меня время в домене мистическим образом откатывается на час назад, наткнулся на эту статью, перерегистрация службы решила проблему. Гранмерси автору.

  • Sergei
    Опубликовано: 04.02.2016 Ответить на сообщение

    А у меня строго 10 минутная разница поддерживалась. Нашел 3-4 статьи на эту тему. Эта оказалась наиболее детальная, несмотря на краткость. Спасибо.

    • admin
      Опубликовано: 04.02.2016 Ответить на сообщение

      Спасибо и вам за отзыв!

  • malcev
    Опубликовано: 17.06.2017 Ответить на сообщение

    Вы написали - "После чего, снова перезапускаем сервер, и запускаем команду, проверяем что служба работает"
    А какими командами это сделать?
    Если я повторно запускаю "regsvr32 /u w32time.dll" у меня выходит ошибка: The module "w32time.dll" was loaded but the call to DllUnregisterServer failed with error code 0x80070005.

    • admin
      Опубликовано: 18.07.2017 Ответить на сообщение

      Имелось ввиду снова запускаем команду 'sc query w32time' что бы оценить в каком режиме работает служба w32time. Повторно выгружать dll не надо.

      • Obrigan
        Опубликовано: 05.07.2018 Ответить на сообщение

        Эмм... Что означают слова "Снова перезапускаем сервер"? Что надо сделать? Если я снова введу команду "sc query w32time", то я, очевидно, получу тот же самый ответ
        "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"

        • admin
          Опубликовано: 15.07.2018 Ответить на сообщение

          Это значит физически перезапускаем сервер или вводим эквивалентную этой операции команду в консоли: shutdown.exe /r /t 0

  • Obrigan
    Опубликовано: 05.07.2018 Ответить на сообщение

    "Решение оказалось нетривиальным:
    net stop w32time
    w32tm /unregister"
    И тут я тоже ловлю ошибку доступа. Даже от имени администратора... Ооййй Господи... Венда ты моя, венда. Венданутая. Как можно вообще априори получать ошибку доступа заходя в консоль от имени администратора?

    • admin
      Опубликовано: 15.07.2018 Ответить на сообщение

      Потому что в венде, системные службы и сервисы работают не из под учетной записи администратора, а из под более высоких привилегий таких как: system, local service (w32time), network service :)

Имя
Укажите своё имя и фамилию
E-mail
Без СПАМа, обещаем
Текст сообщения
Отправляя данную форму, вы соглашаетесь с политикой конфиденциальности и правилами нашего сайта.