【PowerShell】10秒で終わるWindowsの地域やタイムゾーンの設定変更

記事タイトルとURLをコピーする

こんにちは!技術1課のイーゴリです。

AWS上の日本語版のAMI (Amazon Machine Image)からWindows Serverを展開しても、毎回Windows Serverの地方(日本に変更)や時間帯設定(「(UTC+9:00)大阪、札幌、東京」に変更)を変更する必要がありますよね。毎回GUIで操作を行うと、手間がかかりますので、本件の記事では、PowerShell / CLI及びAWSユーザーデータで10秒で終わるWindows Serverの地方や時間帯設定を変更する方法をご紹介させて頂きます。

f:id:swx-korotkov:20220209155700j:plain

まずは「すぐ設定したい」方のために手順をご紹介致します。

10秒で終わる設定(Windows Serverの地域を「日本」に変更、時間帯設定を「(UTC+9:00)大阪、札幌、東京」に変更したい場合)

PowerShellで下記のコマンドを実行します。

「(UTC+9:00)大阪、札幌、東京」に変更するコマンド:

tzutil /s "Tokyo Standard Time"

「国また地域」を「日本」に変更するコマンド:

Set-WinHomeLocation -GeoId 122

以上です!

上記の設定について詳しく知りたい方がいると思いますので、下記でご説明させてください。

設定の詳しい説明

タイムゾーンの設定(CLI / PowerShellの方法)

タイムゾーンの設定に関しては下記の方法からお選びください。

TZUtilコマンド

Windows 7の時代に発表されたtzutil.exe (Windows Time Zone Utility)はWindows7以降から使用できますので、Windows Server 2012R2や2016や2019や2021などでも使用できます。

tzutil.exeは下記のディレクトリにあります。

%WINDIR%\System32

f:id:swx-korotkov:20220214190858p:plain

「(UTC+9:00)大阪、札幌、東京」に変更したい場合、下記のコマンドを実行します。

tzutil /s "Tokyo Standard Time"

確認コマンド:

tzutil /g

期待結果:

PS C:\Users\Administrator> tzutil /g
Tokyo Standard Time
PS C:\Users\Administrator>

もし、東京以外の他のタイムゾーンを設定したい場合、下記のコマンドでタイムゾーンの設定可能なリストが見られますので、「Tokyo Standard Time」の代わりに適切な設定値を入力してください。

tzutil /l

f:id:swx-korotkov:20220214191935p:plain

PowerShellコマンド

Windows Time Zone Utilityの他に下記のPowerShellコマンドでもタイムゾーンを変更できます。

「(UTC+9:00)大阪、札幌、東京」に変更したい場合、下記のコマンドを実行します。

Set-TimeZone -id "Tokyo Standard Time"

もし、東京以外の他のタイムゾーンを設定したい場合、下記のコマンドでタイムゾーンの設定可能なリストが見られますので、「Tokyo Standard Time」の代わりに適切な設定値を入力してください。

Get-TimeZone -ListAvailable

f:id:swx-korotkov:20220215163144p:plain

今回の例では、PowerShell 5.1を使用しますが、PowerShell 5.1以降でも使用可能です。

PS C:\Users\Administrator> $PSVersionTable.PSVersion

Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      14393  4583

地域の変更 (PowerShellの方法)

地域を「日本」に変更したい場合、下記のコマンドを入力します。

Set-WinHomeLocation -GeoId 122

確認コマンド:

Get-WinHomeLocation

出力結果:

PS C:\Users\Administrator> Get-WinHomeLocation

GeoId HomeLocation
----- ------------
  244 米国


PS C:\Users\Administrator> Set-WinHomeLocation -GeoId 122
PS C:\Users\Administrator> Get-WinHomeLocation

GeoId HomeLocation
----- ------------
  122 日本


PS C:\Users\Administrator>

GeoId 122が日本のIDです。もし「日本」以外の他の国を設定したい場合、「122」の代わりに適切なGeoIDを入力してください。

GeoIDのリスト一覧が下記の公式MSページに書いてありますので、ご参考ください。

docs.microsoft.com

AWSユーザーデータ(AWSの場合)

AWSでいっきに地域やタイムゾーンの設定変更

AWSの場合、EC2を構築する時に[インスタンスの設定]の画面で、[ユーザーデータ]に下記のコマンドを貼り付けて、次に進みます。Windows Serverの展開時点で、地域が「日本」、タイムゾーンが「(UTC+9:00)大阪、札幌、東京」となります。

<powershell>
tzutil /s "Tokyo Standard Time"
Set-WinHomeLocation -GeoId 122
</powershell>

f:id:swx-korotkov:20220215152150p:plain

EC2の展開が完了しましたら、RDPで接続し、設定を確認します。

PS C:\Users\Administrator> tzutil /g
Tokyo Standard Time
PS C:\Users\Administrator> Get-WinHomeLocation

GeoId HomeLocation
----- ------------
  122 日本

f:id:swx-korotkov:20220215152603p:plain

以上、御一読ありがとうございました。

イーゴリ (記事一覧)

クラウドインテグレーション部・エンジニア

特にTerraform(自動化)、ネットワーク系、DNS、VDI、Windows Serverに興味があります

日本国内旅行・ドライブが好きです