Windows Update KB5050009が0x800f0922で失敗する原因と対処法まとめ【Windows11 24H2】

Windows 11 24H2 環境で 2025 年5 月公開の累積更新プログラムKB5050009を適用しようとすると、インストール進行度が 30〜40 % 付近で停止してエラー 0x800f0922とともにロールバックされる――この現象は検証用 Insider Preview だけでなく製品版でも報告が増えています。一般的な「Windows Update のトラブルシューティング」や SFC/DISM に頼るだけでは解決しにくく、原因を絞り込んで的確な対処を行うことが重要です。本記事ではログ解析で判明した根本要因から、成功率の高い解決手順、企業環境でのスクリプト展開例、再発防止策まで詳しく解説します。

目次

エラー 0x800f0922とは

0x800f0922 は「CBSEINSTALLERS_FAILED」に分類され、コンポーネントベース サービス (CBS) が内部インストーラーの異常終了を検知した際に返される汎用コードです。典型的には

MoSetup event: “Install failed with error HRESULT FROM WIN32: 0x800f0922”

と記録され、詳細は %windir%\Logs\CBS\CBS.logC:\$WINDOWS.~BT\Sources\Panther\setuperr.log などに残ります。KB5050009 では特にContainer Installer に絡む失敗が多発し、次のような行が目印です。

[Container Installer] failed to start service: HRESULTFROMWIN32(1753) – RPCSSERVER_UNAVAILABLE

KB5050009 が失敗する主な原因

1. Windows Sandbox(Containers‑DisposableClientVM)との競合

  • 累積更新のスクリプトがコンテナ基盤を更新しようとした際、Sandbox が存在することでハンドル競合が発生。
  • サービス WdNisSvc / hns の初期化順が入れ替わり RPC 接続が切れる。
  • イベントログでは ID = 455 (CAPI2) や ID = 3 (HNS) が連鎖。

2. AMD SVM(CPU 仮想化支援機能)が無効

  • AMD Ryzen/EPYC 系チップセットでは、BIOS/UEFI で SVM*1 が Disabled のままだと Hyper‑V スタックがロードできず Sandbox と同様の競合を誘発。
  • ※ Intel VT‑x の場合は無効でもエラーに至らないことが多い。

3. コンテナ関連サービスの破損・レジストリエントリ欠落

  • HKEYLOCALMACHINE\SYSTEM\CurrentControlSet\Services\hns などがサードパーティ製チューニングツールで変更、または他バージョンの Docker Desktop による書き換えで不整合。
  • ServiceDLL パス不一致やスタートアップ種別の誤設定で呼び出しに失敗。

4. 一般的な要因

システム予約パーティション不足、VPN が MTU を縮小してダウンロード破損、既存更新が Pending 状態で残留……といった通常のトラブルも併発すると失敗を招きます。

失敗ログの確認手順

  1. イベントビューアーを開く
    Win + X → V または eventvwr.msc
  2. ナビゲーション — Windows ログ → System を選択し、右ペインで[現在のログのフィルター]をクリック。
  3. 重大エラーにチェックを入れ、キーワード欄に 0x800f0922 または 1753 を入力。
  4. 同時刻の Setup‑etw チャネルや Microsoft‑Windows‑Hyper‑V ログも併せて確認。

解決策:成功率順の実践フロー

手順内容備考
① Windows Sandbox を一時的に無効化管理者 PowerShell で
Disable-WindowsOptionalFeature -Online -FeatureName "Containers-DisposableClientVM"
を実行 → 再起動 → Windows Update を再実行
アップデート後は「Windows の機能の有効化/無効化」から Sandbox を再度有効化可能
② AMD SVM を有効化BIOS/UEFI で Advanced → CPU Configuration → SVM ModeEnabled に変更 → 保存して再試行設定名はベンダーにより VirtualizationSecure Virtual Machine など
③ インプレース修復インストールMedia Creation Tool で同ビルド ISO を取得 → ダブルクリックでマウント → setup.exe
「個人用ファイルとアプリを保持」を選択
システムファイルを再展開し、Sandbox を無効化せずに済む場合も
④ ログ調査 & Feedback Hub 報告失敗時刻前後の System/Setup ログを添付し、Feedback Hub (Win + F) から再現手順と共に送信マイクロソフト側の Fix パッチを促進できる

手順① Windows Sandbox を一時的に無効化する詳細

Windows Sandbox 機能は Windows Defender Application Guard と同じく Container Runtime を利用します。KB5050009 の更新スクリプトはコンテナのベースイメージを上書きする際に Sandbox 用イメージもロック解除しようとしますが、サービスが既に起動中だと競合が発生します。以下の PowerShell ワンライナーで機能を無効化し、更新完了後に同じコマンドを -Enable に切り替えれば OK です。

# サンドボックス無効化
Disable-WindowsOptionalFeature -Online -FeatureName "Containers-DisposableClientVM" -NoRestart
サンドボックス再有効化
Enable-WindowsOptionalFeature -Online -FeatureName "Containers-DisposableClientVM" -NoRestart

手順② AMD SVM を有効化するポイント

AMD A‑GESA 1.2.0.x 以降の UEFI ではデフォルトで SVM が無効の場合があります。無効だと Hyper‑V 欠落を検知したインストーラーが準備段階で停止し、そのまま 0x800f0922 を出力します。Ryzen 7000 シリーズ以降は IOMMU が SVM と連動するため、ON にすると同時に IOMMU も有効になり、SR‑IOV を用いる仮想ネットワークが安定します。

手順③ インプレース修復のコツ

  • ISO はシステムと同一言語・同一エディション・ビルド番号を選択。
  • 「更新プログラムをダウンロードしてインストールする」を今は実行しないを推奨。セットアップ後の初回起動で KB5050009 を再適用する形が最も成功率が高い。
  • USB ブートではなく、必ず Windows 上から setup.exe を直接起動する。

手順④ フィードバック送信と継続的なモニタリング

原因がドライバーやコンポーネント内製コードに及ぶ場合、ユーザー側で対処できない領域に踏み込む可能性があります。Feedback Hub で再現動画ログ一式C:\Windows\Logs 配下、Get‑WindowsUpdateLog による統合ログ)を提出することで、累積更新の次回リリースで回避が導入される例が増えています。

企業/管理者向け:複数台一括対処スクリプト

Intune や Configuration Manager が未導入の環境でも、以下の PowerShell スニペットをグループポリシーの スタートアップスクリプト に登録すれば、Sandbox 無効化 → KB インストール → 再有効化 を自動化できます。

$feature = "Containers-DisposableClientVM"
Disable-WindowsOptionalFeature -Online -FeatureName $feature -NoRestart
Install-WindowsUpdate -KBArticleID "KB5050009" -AcceptAll -IgnoreReboot
Enable-WindowsOptionalFeature -Online -FeatureName $feature -NoRestart
Restart-Computer

Install‑WindowsUpdatePSWindowsUpdate モジュールの関数です。適用台数が 50 台以上の場合は BITS 制限を併用し、帯域を平準化するとネットワーク負荷を抑えられます。

よくある質問 (FAQ)

Q1. Sandbox を無効にしたくない場合の代替策は? インプレース修復による再展開を推奨します。Sandbox が有効のままでもシステムファイルが置き換わるため、競合が解消されるケースがあります。 Q2. Hyper‑V を使っていないので仮想化を切ったままにしたい。 KB5050009 のインストーラーは Hyper‑V が有効かどうかではなく、コンテナ基盤を初期化できるかを確認します。SVM を一時的に有効にし、更新後に無効に戻しても OK です。 Q3. 0x800f0922 が別の KB(KB5046617 など)でも発生する。 コンテナ基盤の更新が絡む累積パッケージでは同じ手順で回避可能です。スクリプトを流用してください。 Q4. DISM で /RestoreHealth が失敗する。 Install .wim ソースのバージョンがシステムより古い例が大半です。/Source パラメーターで同ビルドの install.wim を指定してください。

再発防止のベストプラクティス

  • 定例更新を当てる前に Get‑WindowsOptionalFeature で Sandbox 状態をチェックし、必要に応じて無効化してから更新を適用。
  • Docker Desktop / Podman などサードパーティ製コンテナランタイムのバージョンを Windows Update 後に最新へ揃える。
  • BIOS 更新で SVM が初期化される場合があるため、ファーム更新後は必ず SVM 設定を確認。
  • VPN や Proxy を経由するネットワークでは Bypass 例外に update.microsoft.com ドメインを追加し、パケット書き換えを防止。
  • レジストリやサービスをまとめて最適化するツールは使用を控え、変更ログを必ず残す。

まとめ

KB5050009 が 0x800f0922 で失敗する最大の要因は、Windows Sandbox とコンテナ基盤の競合です。まずは Sandbox を一時的に無効化し、AMD CPU では SVM を有効化したうえでアップデートを再試行する――この 2 手を実践するだけで大半の環境で問題は解消します。それでも解決しない場合はインプレース修復で根本的にシステムファイルを整合させる方法が有効です。法人環境ではスクリプト化により工数を最小化し、失敗ログを収集してベンダーへフィードバックを送ることで、将来の累積更新の品質向上にもつながります。


ご自身の環境に合わせて上記手順を試し、安定した Windows 11 運用を実現してください。事前バックアップとログ取得を忘れずに。

コメント

コメントする

目次