6

我们希望使用 Windows PowerShell 在未连接到域的 Windows 7 工作站上设置特定的 NTP 服务器。目标是运行许多脚本来标准化/加速/简化非域工作站的初始设置。

我们尝试过:

Push-Location
Set-Location HKLM:\SYSTEM\CurrentControlSet\services\W32Time\Parameters
Set-ItemProperty . NtpServer "ca.pool.ntp.org"
Pop-Location

这个脚本:

w32tm /config /manualpeerlist:ca.pool.ntp.org /syncfromflags:manual /update
Stop-Service w32time
Start-Service w32time

运行两个脚本(使用管理员权限)后,我们检查注册表并找到位于:HKLM:\SYSTEM\CurrentControlSet\services\W32Time\Parameters 的 NtpServer 已更新为“ca.pool.ntp.org”,但在控制面板中查看 >我们发现旧 NTP 服务器的日期和时间仍然在列表中——即使计算机重新启动。

这是从 Graham Gold 的以下响应开发的代码,并且有效:

Push-Location
Set-Location HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers
Set-ItemProperty . 0 "ca.pool.ntp.org"
Set-ItemProperty . "(Default)" "0"
Set-Location HKLM:\SYSTEM\CurrentControlSet\services\W32Time\Parameters
Set-ItemProperty . NtpServer "ca.pool.ntp.org"
Pop-Location
Stop-Service w32time
Start-Service w32time

注意:此脚本会覆盖参数“0”中当前的任何内容。要正确使用,您应该让您的脚本使您的 NTP 服务器成为下一个顺序条目。

4

1 回答 1

6

通过一些关于 w32tm 与控制面板日期/时间的谷歌搜索,我发现了这个,这似乎是你需要的。

希望对您有所帮助:-)

于 2013-07-06T23:31:02.570 回答