Windows 10 KB5049981 エラー0x80070005を完全解決 ─ UEFI+MBRミスマッチ修復ガイド

2025 年最初の累積更新プログラム Windows 10 2025‑01 Cumulative Update (KB5049981) を適用しようとすると、再起動後に「更新を完了できませんでした 変更を元に戻しています」と表示され、延々とロールバックを繰り返す――そんなお問い合わせが 1 月下旬から急増しています。更新履歴には エラー 0x80070005(アクセス拒否) が記録され、手動インストール用の msu / cab を使っても結果は変わりません。本記事では、原因の本質である「UEFI ブート設定と MBR ディスク構成の不整合」を解説し、bcdboot を用いた Legacy BIOS ブート再構築による解決手順を詳説します。Windows 11 への将来的なアップグレードを見据えた GPT 変換手順や、AV・暗号化ソフト併用時の考慮点まで網羅した決定版ガイドです。

目次

エラー 0x80070005 の概要

0x80070005 は COM/Win32 API 上の E_ACCESSDENIED を示し、ユーザー権限・ファイルロック・署名検証など多岐にわたる「拒否」事象をひとまとめにした汎用コードです。Windows Update ではサービス スタックがシステム パーティションへ変更を書き込めない場合に頻出します。

今回の失敗パターンを引き起こす構成 ― UEFI × MBR のねじれ

症状技術的背景補足
OS は UEFI モードで起動しているが、システム ディスクが MBR のままUEFI ファームウェアが必要とする ESP(FAT32 100 MB)が存在せず、
従来の「System Reserved」(NTFS 350 MB) が「なんちゃって ESP」として振る舞う状態。ブートローダーや BCD 更新時に ACL 不整合が発生しやすい。
量販店 PC のリカバリイメージ/SSD クローンツール利用後に高確率で混入。

KB5049981 が失敗するメカニズム

  • 累積更新は ブートローダー (bootmgr) と BCD を差し替える際、ESP またはアクティブ パーティションに対して NT AUTHORITY\SYSTEM で書き込みを実施。
  • UEFI かつ GPT 環境であれば ESP は FAT32 でマウント不要だが、UEFI+MBR ではNTFS ボリュームへ UEFI ドライバーがアクセスするという非推奨構成となり、ACL 不一致または Secure Boot DBX 更新失敗時にアクセス拒否が返る。
  • サービス スタックがロールバックを宣言 → 0x80070005 を WindowsUpdate.log と C:\Windows\Logs\CBS\CBS.log の双方へ出力。

現状把握チェックリスト

  1. ブート モード確認
    msinfo32.exe →「BIOS モード」が UEFI か Legacy か確認。
  2. パーティション方式確認
    管理者 PowerShell で
    Get-Disk | Select Number, PartitionStyle
    GPT ではなく MBR と表示されていれば当該ケース。
  3. システム予約領域の有無
    「ディスクの管理」に System Reserved(NTFS 350 MB 前後)が存在し、ドライブ文字が付与されていれば要注意。

推奨解決フロー

手順 1 ― BIOS を Legacy (≒CSM) ブートへ切替え

  1. 電源投入直後に F2 / DEL / ESC 等で UEFI Setup 入場。
  2. Secure Boot を Disabled、CSM / Legacy Boot を Enabled。
  3. 変更を保存して再起動。Windows が無事起動すれば Legacy 状態への移行は成功しています。

手順 2 ― Legacy BIOS エントリを再構築

管理者権限コマンド プロンプト、または WinRE の「コマンド プロンプト」で以下を実行します。

:: 既存 UEFI フォルダーを退避
attrib -s -h -r C:\EFI
ren C:\EFI OLD_EFI

\:: Windows のブートファイルを Legacy 用に再作成
bcdboot C:\Windows /s C: /f BIOS

\:: C ドライブをアクティブに設定
diskpart
select volume C
active
exit

再起動後、msinfo32 の「BIOS モード」が Legacy に変わっていれば OK です。

手順 3 ― Windows Update を再実行

[設定] → [更新とセキュリティ] → [更新プログラムのチェック] で KB5049981 の再ダウンロードを開始。再起動まで完了すれば、ループは解消されます。

手順 4 ― 不要パーティションの整理

  • 「ディスクの管理」に残る System Reserved (例 D:) を右クリック → ボリュームの削除。
  • 未割り当て領域を C: に統合(任意)。クリーンアップ効果は高いものの、必須ではありません。

手順 5 ― 将来的に Windows 11 へアップグレードする場合

  1. Legacy ブートで安定稼働を 1 ~ 2 週間確認。
  2. 管理者 PowerShell:
    mbr2gpt /convert /allowfullos
  3. 完了後 BIOS を UEFI + Secure Boot 有効へ戻す。
  4. Windows Update で Windows 11 24H2 以降へアップグレード。ブート関連の衝突は発生しません。

追加チェックポイント & ヒント

  • サードパーティ製 AV / EDR がカーネル フィルターを注入している環境では、一時的にリアルタイム保護を停止してから更新を実行。
  • BitLocker で C: が暗号化されている場合、巻き戻し時にロック解除トークンが無効化される事例あり。事前に manage-bde -off C: で無効化しておくと安全。
  • SetupDiag(Microsoft 公式診断ツール)で解析すると、BootFiles: E_ACCESSDENIED が Failure Bucket として記録されている。
  • 同時期配信の KB5050188 (Win10・ESU) / KB5050009 (Win11 24H2 Preview) なども同一の失敗ロジックを持つため、本記事の手順を流用可能です。

代替策 ― GPT 変換して UEFI 維持で更新する方法

UEFI モードを維持したままトラブルを解消したい場合、Windows PE へブートし次の手順で GPT 化を先に行う選択肢もあります。

  1. mbr2gpt /convert を WinPE 内で実行し、ESP (FAT32 100 MB) と MSR (16 MB) を自動生成。
  2. bcdboot C:\Windows /s S: /f UEFI (※S: は新規 ESP) で UEFI 用ブートを構築。
  3. 再起動後に KB5049981 を適用。0x80070005 は発生しません。

ただし、システム ディスク末尾に 250 MB 以上の未割り当て領域が必要、Raid / NVMe Driver のロードが WinPE に含まれているか等、前提条件の確認が煩雑になるため、家庭・小規模オフィスではLegacy 切替 → 復旧 → MBR2GPT の二段構えが安全です。

作業を自動化する PowerShell スクリプト例

# Fix-KB5049981.ps1
Write-Host "=== KB5049981 Error 0x80070005 Fix ==="
$bcd = "C:\Windows\System32\bcdboot.exe"
if (-not (Test-Path $bcd)) { Throw "bcdboot not found!" }

1) EFI フォルダー退避

icacls C:\EFI /inheritance\:r
rename-item C:\EFI "OLD\EFI\\$(Get-Date -f yyyyMMddHHmmss)"

2) Legacy ブート再作成

& \$bcd C:\Windows /s C: /f BIOS

3) C: をアクティブ化

\$disk = (Get-Partition -DriveLetter C).DiskNumber
\$volume = (Get-Partition -DriveLetter C).PartitionNumber
Set-Partition -DiskNumber \$disk -PartitionNumber \$volume -IsActive \$true

Write-Host "Completed. Reboot to finish." -ForegroundColor Green

管理者 PowerShell で Set-ExecutionPolicy RemoteSigned のうえ実行し、再起動すると手動作業を自動化できます。

FAQ ― よくある質問

Q1. BIOS を Legacy に切り替えると Secure Boot が使えなくなりませんか? はい。Legacy モードは Secure Boot 非対応です。Windows 10 環境では必須機能ではないため実害はありませんが、将来的に Windows 11 へ移行する際は GPT 変換 → UEFI へ戻すプロセスで Secure Boot を再度有効にしてください。 Q2. bcdboot 実行後も 0x80070005 が出る場合は? C: ドライブが実際にはシステム予約領域で、Windows パーティションが D: 以降にズレている OEM レイアウトの可能性があります。bcdboot D:\Windows /s C: /f BIOS のように正しい Windows パスを指定し直してください。 Q3. クローン SSD でしか発生しない? いいえ。量販店出荷時から UEFI+MBR の状態で販売されている例も報告されています。特に 2014 ~ 2017 年製 PC は注意が必要です。 Q4. データ損失のリスクは? Legacy 切替と bcdboot 自体はデータ領域を変更しませんが、パーティション削除・統合時に誤操作するとデータを失う危険があります。必ずフルイメージ バックアップを取得してください。

まとめ

  • KB5049981 失敗の主因は UEFI モード起動 × MBR ディスク のミスマッチ。
  • Legacy CSM ブートへ切替 → bcdboot で BIOS 用ブートを書き直し → C ドライブをアクティブ化 の 3 ステップで更新が完了。
  • 更新後は mbr2gpt を使い GPT & UEFI に正常回帰しておくと Windows 11 への移行がスムーズ。
  • BitLocker・AV が絡む場合は事前に無効化。必ずシステム バックアップと復元ポイントを取得してから作業する。

上記を実践すれば、再起動ループ地獄から解放されるはずです。ぜひお試しください。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次