サーバー コア アプリ互換性オンデマンド機能
Server Core アプリ互換性オンデマンド機能 (FOD) はオプションの機能パッケージであり、Windows Server 2019 以降、Windows Server インストールの Server Core インストールに、いつでも追加できます。
他のオンデマンド機能の詳細については、「オンデマンド機能」を参照してください。
アプリ互換性 FOD をインストールする理由
Server Core アプリ互換性オンデマンド機能を使って、デスクトップ エクスペリエンス インストール オプションが使用されている Server からバイナリとパッケージのサブセットを含めることで、アプリの互換性を高めることができます。 このオプション パッケージは、独立した ISO で、または Windows Update から入手できますが、追加できるのは Server Core のインストールとイメージだけです。
アプリ互換性 FOD が提供する 2 つの主要な価値は次のとおりです。
- 既に市場に出回っているか展開されているサーバー アプリケーション向けに Server Core の互換性を向上させます。
- OS コンポーネントと重大なトラブルシューティングとデバッグ シナリオで使用されるソフトウェア ツールの向上したアプリ互換性を提供することを支援します。
Server Core アプリ互換性 FOD の一部として利用できるオペレーティング システムのコンポーネントには、次のものが含まれます。
Microsoft 管理コンソール (mmc.exe)
イベント ビューアー (Eventvwr.msc)
パフォーマンス モニター (PerfMon.exe)
リソース モニター (Resmon.exe)
デバイス マネージャー (Devmgmt.msc)
ファイル エクスプローラー (Explorer.exe)
Windows PowerShell (Powershell_ISE.exe)
ディスク管理 (Diskmgmt.msc)
フェールオーバー クラスター マネージャー (CluAdmin.msc)
注意
フェールオーバー クラスター マネージャーを使用するには、フェールオーバー クラスタリング Windowsサーバー機能を最初に追加する必要があります。これは、管理者特権での PowerShell セッションから次のコマンドを実行することで行うことができます。
Install-WindowsFeature -Name Failover-Clustering -IncludeManagementTools
Windows Server 2022 以降では、次のコンポーネントも利用できます (アプリ互換性 FOD と同じバージョンを使用している場合)。
Hyper-V マネージャー (virtmgmt.msc)
タスク スケジューラ (taskschd.msc)
アプリ互換性オンデマンド機能のインストール
重要
- アプリ互換性 FOD は、Server Core にのみインストールできます。 Server Core アプリ互換性 FOD を、デスクトップ エクスペリエンス インストール オプションが使用されている Server に追加しようとしないでください。
- Windows Server 2022 を実行しているサーバーの場合、アプリ互換性 FOD をインストールする前に、x64 ベースのシステム向け Microsoft サーバー オペレーティング システム バージョン 21H2 の 2022-01 累積的な更新プログラムのプレビュー (KB5009608) またはそれ以降の累積的な更新プログラムをインストールしていることを確認してください。 これを確認するには、オペレーティング システムのビルド番号が 20348.502 以上である必要があります。 これより前に、リモート デスクトップ プロトコル (RDP) を使用してサーバーに接続しようとした場合、黒い画面が表示され、切断される場合があります。
インターネットに接続されている
サーバーが Windows Update に接続できる場合は、管理者特権の PowerShell セッションから次のコマンドを実行し、コマンドの実行が完了したら Windows Server を再起動します。
Add-WindowsCapability -Online -Name ServerCore.AppCompatibility~~~~0.0.1.0
インターネットから切断されている
サーバーが Windows Update に接続できない場合は、代わりに Windows Server 言語とオプション機能 ISO イメージ ファイルをダウンロードして、その ISO をローカル ネットワーク上の共有フォルダーにコピーします。
- ボリューム ライセンスがある場合、Windows Server 言語とオプション機能 ISO イメージ ファイルは、オペレーティング システムの ISO イメージ ファイルを取得するのと同じポータル (ボリューム ライセンス サービス センター) からダウンロードできます。
- Windows Server 言語とオプション機能 ISO イメージ ファイルは、Microsoft Evaluation Center またはサブスクライバー向けの Visual Studio ポータルでも入手できます。
注意
言語とオプション機能 ISO イメージ ファイルは、Windows Server 2022 の新機能です。 以前のバージョンの Windows Server では、オンデマンド機能 (FOD) ISO が使用されます。
ローカル ネットワークに接続されていて、アプリ互換性 FOD を追加したい Server Core コンピューターで、管理者アカウントを使ってサインインします。
FOD ISO のマウント
PowerShell の
New-PSDrive
、コマンド プロンプトのnet use
、またはその他の方法を使用して、FOD ISO の場所に接続します。 たとえば、管理者特権の PowerShell セッション内で次のコマンドを実行します。$credential = Get-Credential New-PSDrive -Name FODShare -PSProvider FileSystem -Root "\\server\share" -Credential $credential
FOD ISO を任意のローカル フォルダーにコピーします (コピー操作には時間がかかる場合があります)。 次の変数をフォルダーの場所と ISO ファイル名で編集し、次のようなコマンドを実行します。
$isoFolder = "C:\SetupFiles\WindowsServer\ISOs" $fodIsoFilename = "FOD_ISO_filename.iso" New-Item -ItemType Directory -Path $isoFolder Copy-Item -Path "FODShare:\$fodIsoFilename" -Destination $isoFolder -Verbose
次のコマンドを使用して、FOD ISO をマウントします。
$fodIso = Mount-DiskImage -ImagePath "$isoFolder\$fodIsoFilename"
次のコマンドを実行して、FOD ISO がマウントされているドライブ文字を取得します。
$fodDriveLetter = ($fodIso | Get-Volume).DriveLetter
次のコマンドを実行します (オペレーティング システムのバージョンによって異なります)。
Windows Server 2022 の場合:
Add-WindowsCapability -Online -Name ServerCore.AppCompatibility~~~~0.0.1.0 -Source ${fodDriveLetter}:\LanguagesAndOptionalFeatures\ -LimitAccess
以前のバージョンの Windows Server の場合:
Add-WindowsCapability -Online -Name ServerCore.AppCompatibility~~~~0.0.1.0 -Source ${fodDriveLetter}:\ -LimitAccess
進行状況バーが完了したら、オペレーティング システムを再起動します。
必要に応じて、Internet Explorer 11 を Server Core に追加する
注意
Server Core アプリ互換性 FOD は、Internet Explorer 11 の追加に必要ですが、Internet Explorer 11 は Server Core アプリ互換性 FOD を追加するのには必要ありません。
注意
Windows Server 2022 以降では、Internet Explorer 11 を Windows Server の Server Core インストールに追加することもできますが、代わりに Microsoft Edge を使用する必要があります。 Microsoft Edge には Internet Explorer モード ("IE モード") が組み込まれているので、従来の Internet Explorer ベースの Web サイトやアプリケーションに Microsoft Edge から直接アクセスできます。 Internet Explorer のライフサイクル ポリシーについては、こちらを参照してください。
アプリ互換性 FOD が既に追加されていて、FOD のオプション パッケージ ISO がローカルにコピーされている Server Core コンピューターで、管理者としてサインインします。
次のコマンドを使用して、FOD ISO をマウントします。 この手順では、FOD ISO をローカルにコピー済みであることを前提としています。 そうでない場合は、「FOD ISO のマウント」の手順 1 と 2 を実行します。 これら 2 つの手順の後にコマンドを実行します。 変数をフォルダーの場所と ISO ファイル名で編集し、次のようなコマンドを実行します。
$isoFolder = "C:\SetupFiles\WindowsServer\ISOs" $fodIsoFilename = "FOD_ISO_filename.iso" $fodIso = Mount-DiskImage -ImagePath "$isoFolder\$fodIsoFilename"
次のコマンドを実行して、FOD ISO がマウントされているドライブ文字を取得します。
$fodDriveLetter = ($fodIso | Get-Volume).DriveLetter
Internet Explorer の .cab ファイルへのパスとして
$packagePath
変数を使用して、次のコマンド (オペレーティング システムのバージョンによって異なります) を実行します。Windows Server 2022 の場合:
$packagePath = "${fodDriveLetter}:\LanguagesAndOptionalFeatures\Microsoft-Windows-InternetExplorer-Optional-Package~31bf3856ad364e35~amd64~~.cab" Add-WindowsPackage -Online -PackagePath $packagePath
以前のバージョンの Windows Server の場合:
$packagePath = "${fodDriveLetter}:\Microsoft-Windows-InternetExplorer-Optional-Package~31bf3856ad364e35~amd64~~.cab" Add-WindowsPackage -Online -PackagePath $packagePath
進行状況バーが完了したら、オペレーティング システムを再起動します。
リリース ノートと推奨事項
重要
- FoD を使用してインストールされたパッケージは、新しい Windows Server バージョンへのインプレース アップグレード後にそのまま残ります。 アップグレード後にそれらをもう一度インストールする必要があります。
- または、FoD パッケージをアップグレード メディアに追加することもできます。 パッケージをアップグレード メディアに追加すると、アップグレードの完了後も任意の FoD パッケージの新しいバージョンが確実に存在するようになります。 詳細については、「オフラインの WIM Server Core イメージに機能とオプション パッケージを追加する」セクションを参照してください。
アプリ互換性 FOD をインストールしてサーバーを再起動すると、コマンド コンソールのウィンドウ フレームの色が異なる色調の青に変わります。
Internet Explorer 11 のオプション パッケージのインストールも選択する場合、ローカルに保存した .htm ファイルをダブルクリックして開くことはサポートされていません。 ただし、右クリックして [Internet Explorer で開く] を選択するか、Internet Explorer の [ファイル] ->[開く] から直接開くことができます。
アプリ互換性 FOD を使用して Server Core のアプリ互換性をさらに強化するため、IIS 管理コンソールがオプション コンポーネントとして Server Core に追加されています。 ただし、IIS 管理コンソールを使うには、最初にアプリ互換性 FOD を追加する必要があります。 IIS 管理コンソールは、Microsoft 管理コンソール (mmc.exe) に依存します。これはアプリ互換性 FOD を追加することで Server Core でのみ使用できます。 IIS 管理コンソールを追加するには、PowerShell のコマンドレット Install-WindowsFeature を使用します。
Install-WindowsFeature -Name Web-Mgmt-Console
一般的なガイダンスとして、Server Core にアプリケーションをインストールするときに (これらのオプション パッケージの有無にかかわらず)、サイレント インストールのオプションと手順を使用する必要がある場合があります。
オフラインの WIM Server Core イメージへの追加
言語とオプション機能 ISO と Windows Server ISO 両方のイメージ ファイルを、Windows コンピューター上のローカル フォルダーにダウンロードします。 これらの手順は Windows デスクトップ PC で実行できます。Server Core インストール オプションを使用して Windows Server を実行する必要はありません。
- ボリューム ライセンスがある場合、Windows Server 言語とオプション機能 ISO イメージ ファイルは、オペレーティング システムの ISO イメージ ファイルを取得するのと同じポータル (ボリューム ライセンス サービス センター) からダウンロードできます。
- Windows Server 言語とオプション機能 ISO イメージ ファイルは、Microsoft Evaluation Center またはサブスクライバー向けの Visual Studio ポータルでも入手できます。
注意
言語とオプション機能 ISO イメージ ファイルは、Windows Server 2022 の新機能です。 以前のバージョンの Windows Server では、オンデマンド機能 (FOD) ISO が使用されます。
管理者特権での PowerShell セッションで次のコマンドを実行して、言語とオプション機能 ISO と Windows Server ISO の両方をマウントします。 変数をフォルダーの場所と ISO ファイル名で編集し、次のようなコマンドを実行します。
$isoFolder = "C:\SetupFiles\WindowsServer\ISOs" $fodIsoFilename = "FOD_ISO_filename.iso" $wsIsoFilename = "Windows_Server_ISO_filename.iso" $fodIso = Mount-DiskImage -ImagePath "$isoFolder\$fodIsoFilename" $wsIso = Mount-DiskImage -ImagePath "$isoFolder\$wsIsoFilename"
次のコマンドを実行して、FOD ISO と Windows Server ISO がマウントされているドライブ文字を取得します。
$fodDriveLetter = ($fodIso | Get-Volume).DriveLetter $wsDriveLetter = ($wsIso | Get-Volume).DriveLetter
Windows Server ISO ファイルの内容をローカル フォルダーにコピーします (例: C:\SetupFiles\WindowsServer\Files)。 コピー操作には時間がかかる場合があります。
$wsFiles = "C:\SetupFiles\WindowsServer\Files" New-Item -ItemType Directory -Path $wsFiles Copy-Item -Path ${wsDriveLetter}:\* -Destination $wsFiles -Recurse
次のコマンドを使用して、install.wim ファイル内で変更するイメージ名を取得します。 Windows Server ISO ファイルの sources フォルダー内にある install.wim ファイルへのパスを
$installWimPath
変数に追加します。 出力の、この install.wim ファイルで使用できるイメージの名前に注意してください。$installWimPath = "C:\SetupFiles\WindowsServer\Files\sources\install.wim" Get-WindowsImage -ImagePath $installWimPath
次のコマンドを使用して (サンプルの変数値は独自の値に置き換えて、前のコマンドから
$installWimPath
変数を再利用します)、install.wim ファイルを新しいフォルダーにマウントします。$wimImageName
- 前のコマンドの出力から、マウントするイメージの名前を入力します。 この例では、Windows Server 2022 Datacenter を使用します。$wimMountFolder
- install.wim ファイルの内容にアクセスするときに使用する空のフォルダーを指定します。
$wimImageName = "Windows Server 2022 Datacenter" $wimMountFolder = "C:\SetupFiles\WindowsServer\WIM" New-Item -ItemType Directory -Path $wimMountFolder Set-ItemProperty -Path $installWimPath -Name IsReadOnly -Value $false Mount-WindowsImage -ImagePath $installWimPath -Name $wimImageName -Path $wimMountFolder
次のコマンド (サンプルの変数値は独自の値に置き換えます) を使用して (バージョンによって異なります)、マウントした install.wim イメージに必要な機能とパッケージを追加します。
$capabilityName
- インストールする機能の名前を指定します (この場合は AppCompatibility 機能)。$packagePath
- インストールするパッケージへのパスを指定します (この場合は、Internet Explorer cab ファイルへのパス)。
Windows Server 2022 の場合:
$capabilityName = "ServerCore.AppCompatibility~~~~0.0.1.0" $packagePath = "${fodDriveLetter}:\LanguagesAndOptionalFeatures\Microsoft-Windows-InternetExplorer-Optional-Package~31bf3856ad364e35~amd64~~.cab" Add-WindowsCapability -Path $wimMountFolder -Name $capabilityName -Source "${fodDriveLetter}:\LanguagesAndOptionalFeatures" -LimitAccess Add-WindowsPackage -Path $wimMountFolder -PackagePath $packagePath
以前のバージョンの Windows Server の場合:
$capabilityName = "ServerCore.AppCompatibility~~~~0.0.1.0" $packagePath = "${fodDriveLetter}:\Microsoft-Windows-InternetExplorer-Optional-Package~31bf3856ad364e35~amd64~~.cab" Add-WindowsCapability -Path $wimMountFolder -Name $capabilityName -Source "${fodDriveLetter}:\" -LimitAccess Add-WindowsPackage -Path $wimMountFolder -PackagePath $packagePath
次のコマンドと、前のコマンドの
$wimMountFolder
変数を使用して、install.wim ファイルをマウント解除して変更をコミットします。Dismount-WindowsImage -Path $wimMountFolder -Save
これで、Windows Server インストール ファイル用に作成したフォルダーから setup.exe を実行して、サーバーをアップグレードできるようになりました (この例では、C:\SetupFiles\WindowsServer\Files)。 これでこのフォルダーに、追加機能とオプション パッケージが含まれた Windows Server のインストール ファイルが含まれるようになりました。