1

Мне нужно изменить дату сервера на следующий день, затем запустить сценарий sql, а затем изменить дату сервера обратно.

Я разобрался, как изменить дату сервера через powershell

Invoke-Command -ComputerName $sql_box_server_name -Credential $credentials -ScriptBlock {Set-Date -date (Get-Date).AddDays(1)}

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

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

Примечание. $ Credentials устанавливается с использованием Get-Credentials и по умолчанию использует Kerberos.

1 ответ1

0

В моем шаблоне сценария установки контроллера домена у меня есть эти две инъекции реестра:

reg ADD "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /t REG_DWORD /v MaxPosPhaseCorrection /d 900 /f
reg ADD "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /t REG_DWORD /v MaxNegPhaseCorrection /d 900 /f

Это будет отклонять настройку времени более чем на 15 минут в любом случае, что намного труднее, чем значение по умолчанию, если я правильно помню (у меня до сих пор не было проблем с этим).

В любом случае, если вы сможете изменить эти значения на удаленном компьютере на что-то вроде 172800 (на 48 часов), я думаю, вы сможете делать то, что хотите.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .