Инструмент w32tm
можно использовать для настройки w32time
службы. Недавно я обнаружил, что стандартная Windows 10 (не присоединенная к домену) синхронизирует свое время, даже если служба w32time
не запущена. Оба, w32tm /query /status
и w32tm /query /configuration
возвращают:
The following error occurred: The service has not been started. (0x80070426)
Get-Service w32time
подтверждает это:
Status Name DisplayName
------ ---- -----------
Stopped w32time Windows Time
Но в графическом интерфейсе я могу настроить синхронизацию времени и увидеть, что она работает:
Итак, есть ли какая-либо другая служба времени, кроме w32time
доступной? Если да, как ее настроить, не используя графический интерфейс? (Командлеты PowerShell, инструменты командной строки, реестр (в крайнем случае), ...)
Дополнительные выводы:
Существуют две запланированные задачи, которые могут быть связаны с настройками графического интерфейса:
Get-ScheduledTask | ? TaskName -like 'SynchronizeTime*' | Select-Object -ExpandProperty Actions -Property URI
URI : \Microsoft\Windows\Time Synchronization\SynchronizeTime
Id :
Arguments : start w32time task_started
Execute : %windir%\system32\sc.exe
WorkingDirectory :
PSComputerName :
URI : \Microsoft\Windows\Time Zone\SynchronizeTimeZone
Id :
Arguments :
Execute : %windir%\system32\tzsync.exe
WorkingDirectory :
PSComputerName :
Последнее время выполнения, похоже, было в течение последних 7 дней (так что довольно активно). Но обе задачи не имеют определенного триггера, поэтому что-то другое должно их запустить.
Нажатие кнопки "Синхронизировать сейчас" не запускает ни одну из двух задач. Кнопка, похоже, выполняет "C:\WINDOWS\system32\SystemSettingsAdminFlows.exe" ForceTimeSync 1
.
решение1
Да, это совершенно неостановимая вещь. Вы останавливаете службу времени Windows или останавливаете автоматическую установку даты и времени, время будет синхронизировано. На компьютерах, присоединенных к домену, эта штука более строгая, чтобы заставить аутентификацию Kerberos работать правильно. Так что в качестве последнего средства я думаю удалить NTP-серверы из реестра. Вы можете использовать этот код powershell:
Remove-Item -Path "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers"
Или файл .reg для этого:
Windows Registry Editor Version 5.00
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers]