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
両方のスクリプトを (管理者特権で) 実行した後、レジストリを確認し、次の場所で NtpServer を見つけます。コンピューターを再起動しても、古い 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 サーバーを次の連続するエントリにする必要があります。