OCI上のWindowsサーバーに言語とシステムロケールを日本語に設定

OCI General

初めに

Oracle Cloud Infrastructure (OCI) の Compute インスタンス作成時には、言語と地域の設定オプションがありません。そのため、インスタンス作成直後の初期状態では、システムロケールが「英語(米国)」、表示言語も英語のみに設定されています。日本語を使用するためには、言語パッケージのインストールとロケールの変更が必要です。

本記事では、Windowsサーバーを例として以下の2つの方法を紹介します:

  • 手動での設定方法
  • PowerShellスクリプトでの設定方法
No.設定対象設定前設定後DesktopPowerShell
1タイムゾーンUTC日本標準時(JST)LINKLINK
2言語英語(米国)日本語LINKLINK
3地域米国日本LINKLINK
4システム ロケール英語(米国)日本語(日本)LINKLINK
5ようこそ画面なしようこそ画面
に設定をコピー
LINKN/A

検証済環境

  • インスタンス・イメージ:
    • Windows Server 2019 Standard
    • Windows Server 2022 Standard
  • インスタンス・シェープ:1 OCPU, 12 GBメモリ

※、本記事の内容は、OCI上の Windows Server 2019および2022の両方に対応しています。

1. デスクトップ上の設定

1-1. タイムゾーンの設定

Windowsインスタンスが作成された後、タイムゾーンはUTCになります。

現在のタイムゾーンを表示:tzutil /g
全てのタイムゾーンを表示:tzutil /l

コマンド・プロンプトで現在タイムゾーンを表示:(管理者権限は不要)

C:\Users\opc>tzutil /g
UTC
C:\Users\opc>tzutil /l
...略...
(UTC+09:00) Osaka, Sapporo, Tokyo
Tokyo Standard Time
...略...

タイムゾーンを変更する場合は、管理者権限が必要です。
日本標準時(Japan Stand Time)に設定:

C:\Windows\system32>tzutil /s "Tokyo Standard Time"

C:\Windows\system32>tzutil /g
Tokyo Standard Time
C:\Windows\system32>

1-2. 日本語パッケージのインストールと言語表示の設定

※、事前準備として、インターネット接続環境を確保してください。

タスクバーにある検索ボックスに 「language」 と入力し、表示される検索結果から 「language settings」 を選択します。
empty

"Language"のページに、"Add a language"をクリックします。
empty

リストから「日本語」を選択し、「次へ」をクリックします。
empty

デフォルトでは「言語パックのインストール」、「音声読み上げ(Text-to-Speech)」および「手書き入力」が選択されていますが、この例では、以下のように選択してインストールを開始します。
empty

インストールが完了するまで、しばらくお待ちください。
empty

完了後、日本語が既定の表示言語となり、次回サインイン時から有効になります(サーバーの再起動は不要です)
empty

1-3. 地域設定

サイイン後、表示言語が日本語になっています。タスクバーにある検索ボックスに 「region」 と入力し、表示される検索結果から 「地域の設定」 を選択します。
empty

デフォルトの設定は、米国です。
empty

リストから、日本を選択します。
empty

1-4. システム ロケールの変更

現在、日本語表示になっていますが、この時点ではシステムロケールがまだ変更されていないため、コマンドプロンプト内の表示は英語のままです。引き続き、システムロケールの変更を行ってください。

地域設定画面の一番下にある「日付、時刻、地域の追加設定」をクリックします。
empty

コントロールパネル → 時計と地域 → 「日付、時刻、数値形式の変更」
empty

「管理」タブで「システム ロケールの変更」をクリックします。
empty

現在のシステム ロケールは「英語(米国)」です。
empty

リストから「日本語(日本)」を選択し、「OK」をクリックします。
empty

変更を有効にするには、再起動が必要です。Windowsインスタンスの再起動は、サーバー側ではなくOCIコンソールから実施することを推奨します。
empty

再起動後、コマンドプロンプトを開き、日本語が正しく表示されることを確認してください。
empty

1-5. ようこそ画面に設定をコピー

コントロールパネル → 時計と地域 → 「日付、時刻、数値形式の変更」
empty

「管理」タブで「設定のコピー」をクリックします。
empty

「ようこそ画面とシステム アカウント」にチェックを入れ、「OK」ボタンをクリックします。
empty

設定の変更後は、再起動が必要です。
empty

再起動後、ようこそ画面が日本語で表示されるようになります。
empty

2. PowerShellでの設定

2-1. タイムゾーンの設定

タイムゾーンの取得:Get-TimeZone
タイムゾーンの変更:Set-TimeZone -Id "Tokyo Standard Time" (管理者権限が必要)

PS C:\Windows\system32> Get-TimeZone


Id                         : UTC
DisplayName                : (UTC) 協定世界時
StandardName               : 協定世界時
DaylightName               : 協定世界時
BaseUtcOffset              : 00:00:00
SupportsDaylightSavingTime : False



PS C:\Windows\system32> Set-TimeZone -Id "Tokyo Standard Time"
PS C:\Windows\system32> Get-TimeZone


Id                         : Tokyo Standard Time
DisplayName                : (UTC+09:00) 大阪、札幌、東京
StandardName               : 東京 (標準時)
DaylightName               : 東京 (夏時間)
BaseUtcOffset              : 09:00:00
SupportsDaylightSavingTime : False



PS C:\Windows\system32>

2-2. 日本語パッケージのインストールと言語表示の設定

a) コマンドの利用制限

Install-Language ja-JPWindows 11 では利用可能ですが、OCI上の Windows Server 2019 および 2022 ではインストールされていないため、使用できません。
Install-Language 利用可能かどうかを確認するには、以下のコマンドを実行してください。何も返されない場合は、未インストールです。

Windows Server 2019 と 2022 の出力結果:未インストール

PS C:\Windows\system32> get-command -Module LanguagePackManagement
PS C:\Windows\system32>

Windows 11 の出力結果:インストール済

PS C:\WINDOWS\system32> get-command -Module LanguagePackManagement

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Alias           Get-Language                                       1.0        LanguagePackManagement
Alias           Get-PreferredLanguage                              1.0        LanguagePackManagement
Alias           Get-SystemLanguage                                 1.0        LanguagePackManagement
Alias           Set-PreferredLanguage                              1.0        LanguagePackManagement
Alias           Set-SystemLanguage                                 1.0        LanguagePackManagement
Cmdlet          Get-InstalledLanguage                              1.0        LanguagePackManagement
Cmdlet          Get-SystemPreferredUILanguage                      1.0        LanguagePackManagement
Cmdlet          Install-Language                                   1.0        LanguagePackManagement
Cmdlet          Set-SystemPreferredUILanguage                      1.0        LanguagePackManagement
Cmdlet          Uninstall-Language                                 1.0        LanguagePackManagement

PS C:\WINDOWS\system32>

b) 対策 - Windows Server 2019 の場合

公式サイトからISOイメージをダウンロードし、言語パッケージをインストールしてください(インターネット接続が必要です)。

  • イメージファイル名:17763.1.180914-1434.rs5_release_SERVERLANGPACKDVD_OEM_MULTI.iso
  • サイズ:約 2.6 GB
  • 一時保存先:C:\Users\opc\Downloads (任意の場所)
  • 言語パッケージのフルパス:D:\x64\langpacks\Microsoft-Windows-Server-Language-Pack_x64_ja-jp.cab

PowerShellスクリプト

# Install Japanese Language Pack in Windows Server 2019 Standard (OCI Compute Instance)

${iso_path} = "https://software-download.microsoft.com/download/pr/"
${iso_file} = "17763.1.180914-1434.rs5_release_SERVERLANGPACKDVD_OEM_MULTI.iso"
${iso_url} = ${iso_path} + ${iso_file}
${download_file} = $home + "\Downloads\" + ${iso_file}

# Download ISO image
$ProgressPreference = 'SilentlyContinue' # Disable process bar, to save download time
Invoke-WebRequest -Uri ${iso_url} -OutFile ${download_file}

# Mount disk image
Mount-DiskImage ${download_file}

# Install the language pack (ja-JP)
${cab_file} = "D:\x64\langpacks\Microsoft-Windows-Server-Language-Pack_x64_ja-jp.cab"
lpksetup /i ja-JP /p ${cab_file}

# Set UI Language to Japanese
Set-WinUserLanguageList ja-JP,en-US -Force

関連コマンドの解説

コマンド用途レファレンス
Invoke-WebRequestファイルのダウンロードリンク
Mount-DiskImageディスクイメージのマウントリンク
lpksetup言語パッケージのインストールリンク)
Set-WinUserLanguageList表示言語の設定リンク


ディスクイメージのマウント
コマンド:Mount-DiskImage <ISO_File_Full_Path>

PS C:\Windows\system32> # Mount disk image
PS C:\Windows\system32> Mount-DiskImage ${download_file}


Attached          : True
BlockSize         : 0
DevicePath        : \\.\CDROM0
FileSize          : 2831929344
ImagePath         : C:\Users\opc\Downloads\17763.1.180914-1434.rs5_release_SERVERLANGPACKDVD_OEM_MULTI.iso
LogicalSectorSize : 2048
Number            : 0
Size              : 2831929344
StorageType       : 1
PSComputerName    :



PS C:\Windows\system32>

マウント後、ファイルエクスプローラーには次のように表示されます。
empty

言語パッケージのインストール
コマンド:lpksetup /i ja-JP /p <言語パッケージのパス>
上記を実行すると、次の画面が表示されます。インストールが完了するまで、しばらくお待ちください。
empty
※、完了後、画面は自動的に閉じられます。lpksetupが完了した時点では、日本語はまだ表示言語になっていませんので、引き続き次のステップを実行してください。
※、lpksetupコマンドの他のオプション:

  • -r: 操作が完了した後に再起動を抑制する。
  • -f: 再起動する必要がある場合、他のユーザーがコンピュータにログオンしていても強制的に再起動する。
  • -s: GUIが抑制され、サイレントモードで操作を行う。
  • -u: 言語パッケージをアンインストールする。

日本語表示の設定
コマンド:Set-WinUserLanguageList ja-JP,en-US -Force
コマンドが完了すると、次のように日本語が表示言語と設定されています。
empty
詳細画面を見ると、言語パッケージのみがインストールされています。その他のオプションをインストールしたい場合は、手動で行ってください。
empty

※、設定完了後、次回サインイン時から有効になります(サーバーの再起動は不要です)

c) 対策 - Windows Server 2022 の場合

公式サイトからISOイメージをダウンロードし、言語パッケージをインストールしてください。

  • イメージファイル名:20348.1.210507-1500.fe_release_amd64fre_SERVER_LOF_PACKAGES_OEM.iso
  • サイズ:約 5.7 GB
  • 一時保存先:C:\Users\opc\Downloads (任意の場所)
  • 言語パッケージのフルパス:D:\LanguagesAndOptionalFeatures\Microsoft-Windows-Server-Language-Pack_x64_ja-jp.cab
サイズが大きいため、ダウンロード前に十分なディスク領域を確保しておいてください。

PowerShellスクリプト

# Install Japanese Language Pack in Windows Server 2022 Standard (OCI Compute Instance)

${iso_url} = "https://go.microsoft.com/fwlink/p/?linkid=2195333"
${iso_file} = "20348.1.210507-1500.fe_release_amd64fre_SERVER_LOF_PACKAGES_OEM.iso"
${download_file} = $home + "\Downloads\" + ${iso_file}

# Download ISO image
$ProgressPreference = 'SilentlyContinue' # Disable process bar, to save download time
Invoke-WebRequest -Uri ${iso_url} -OutFile ${download_file}

# Mount disk image
Mount-DiskImage ${download_file}

# Install the language pack (ja-JP)
${cab_file} = "D:\LanguagesAndOptionalFeatures\Microsoft-Windows-Server-Language-Pack_x64_ja-jp.cab"
lpksetup /i ja-JP /p ${cab_file}

# Set UI Language to Japanese
Set-WinUserLanguageList ja-JP,en-US -Force

実行結果の詳細を省略します。

コマンドSet-WinUserLanguageListが完了すると、日本語が既定の表示言語となり、次回サインイン時から有効になります(サーバーの再起動は不要です)
empty

2-3. 地域設定

国(地域)の設定:Set-WinHomeLocation -GeoID 122 (日本のGeoIDは122です)
地域フォーマットの設定:Set-Culture ja-JP

PS C:\Windows\system32> Set-WinHomeLocation -GeoID 122
PS C:\Windows\system32> Get-WinHomeLocation

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


PS C:\Windows\system32> Set-Culture ja-JP
PS C:\Windows\system32> Get-Culture

LCID             Name             DisplayName
----             ----             -----------
1041             ja-JP            日本語 (日本)


PS C:\Windows\system32>

2-4. システム ロケールの変更

コマンド:Set-WinSystemLocale ja-JP

※、管理者として実行してください。
※、システムロケールの変更後は、再起動が必要です。

PS C:\Windows\system32> Get-WinSystemLocale

LCID             Name             DisplayName
----             ----             -----------
1033             en-US            English (United States)


PS C:\Windows\system32> Set-WinSystemLocale ja-JP
PS C:\Windows\system32>

ようこそ画面にロケール設定をコピー
※、次のコマンドレットは、Windows 11 には含まれていますが、OCI上の Windows Server 2019 および 2022 には含まれていません。そのため、Windows Server 2022 で設定を行いたい場合は、STEP 1-5を参照して、手動で実行してください。

Copy-UserInternationalSettingsToSystem -WelcomeScreen $True -NewUser $True

お使いの環境で利用可能か確認するには、次のコマンドを実行してください。

Get-Command -Module International

以上

参考資料
Windows PowerShell Reference - International
Cannot configure a language pack for Windows Server 2019 Desktop Experience

タイトルとURLをコピーしました