【Windows10】0xc1900104,0x800f0922「システムで予約済みのパーティションを更新ができませんでした。」エラーでWindowsUpdate(機能更新プログラム)が失敗する場合の対処方法

Windows

こんにちは!今回はWindowsUpdateで0xc1900104,0x800f0922エラーが発生したときの対応方法を紹介していきたいと思います。

この事象は、機能更新プログラム(:FU)を実行したときに失敗する例としては若干レアなパターンかと思います。というのも、私もそれなりに長い間WindowsUpdateにまつわる業務をしてきましたがこのような事象には初めて出会いました。

正直、普通に使っていてなぜこんなことになるのかはわからずじまいなのですが、トラブル事例として紹介させていただきます。

事象

Setup.exeからFUを実行した際に、下記のような「システムで予約済みのパーティションを更新ができませんでした。」という画面が表示されて失敗してしまう。

アップグレードやWindowsUpdateでの更新でも同様のメッセージもしくはエラーコードが返ってくることもあるようです。

Windows 10 のインストール中にエラーが発生しました" システム予約パーティションを更新できませんでした
Windows 10 にアップグレードすると、"システム予約パーティションを更新できませんでした" 、エラー コード 0xc1900104、またはエラー コード 0x8000f0922 というエラーが表示されることがあります。

原因

通常Windows10をインストールすると、ハードディスクの見えない領域に100MBほどの「システムで予約済み」というパーティションができあがります。

「システムで予約済み」の例

この領域に何かしらのファイルがおかれてしまって、容量が圧迫されているのが原因のようです。

試しに、発生したコンピュータのシステム予約済みパーティションの中身を見てみると......

予約済み領域が圧迫されている様子

このように謎のファイルで埋め尽くされていました。
これを削除してあげれば何とかなりそうですね!

解決方法

①コマンドプロンプトを管理者で起動する

まずはコマンドプロンプトを管理者権限で立ち上げます。
Windowsキー+R をしたあと、

cmd

と入力し、ShiftキーとCtrlキーを同時押ししながらEnterキーを押します。

すると下記のようなユーザーアカウント制御の画面がでることもあるので、「はい」をクリックします。

「はい」をクリックして管理者で実行する

C:\Windows\system32cmd.exeとタイトルバーに表示されていれば管理者で実行されています。

管理者で実行されているコマンドプロンプトの例

②Diskpartを起動してシステムで予約済みパーティションにドライブレターを付ける

システム予約済みパーティション中身を見たりいじったりするためには、まずはアクセスできるようにドライブレターを付ける必要があります。今回は「Y」ドライブとしてとりあえずつけてみましょう。(もしYドライブがすでにある場合は別のアルファベットを使ってください)

先ほど起動したコマンドプロンプトに

diskpart

と入力してEnterキーをおします。するとコマンドプロンプトの先頭が「DISKPART」と表示が変わります。これでDiskpartの起動はOKです。

次に、パーティションのリストを表示するために

lis vol

と入力し、Enterキーを押します。

このようにパーティションのリストが表示されるので、その中にSizeが100MBのものがあります。(私の場合だとVolume3)これがシステム予約済みパーティションになります。

では、「Volume3」に「Y」というドライブレターを付けていきましょう

sel vol 3
assign letter=Y

上記のコマンドを実行して正常に完了すれば、下記のようになると思います。

実行例

ここでもう一度「lis vol」すると「Y」ドライブになっていることが確認できると思います。

ドライブレターがYに変更できました。

これでDiskpartでの作業は終了です。「exit」してコマンドプロンプトに戻りましょう。

コマンドプロンプトに戻ると先頭行がもとのSystem32へのパスになる

③コマンドプロンプトで不要なファイルを削除する

最後に不要なファイルがあるか確認して、要らないファイルは削除してしまいましょう。
基本的にEFIフォルダ以外は不要であることがほとんどですが、誤って消してしまうと起動しなくなってしまう事もあるので、バックアップは取っておいた方が良いでしょう。

まずは

Y:

と入力してYドライブに移動します。

Yドライブに移動できると先頭行はY:になる

ここで

dir

と入力するとファイルの一覧が表示されるので、不要なファイルを削除していきましょう。

例として「test.dat」と言うファイルを置いてみました

見つかった不要なファイルを「del」コマンドで削除します。

del [削除したいファイル名] /f

状況にもよりますが、一個一個消していくしかないと思います。(同じ拡張子のものであれば*.datなどで消せるかもしれませんが・・・。

綺麗に削除できれば下記のように「EFI」フォルダのみの状態にできると思います。

綺麗になった予約済みパーティション

これで再度更新を実行してあげれば同じエラーで失敗することはないでしょう。

あとがき

今回は予約済みパーティションが圧迫されてWindowsの更新が失敗するケースについて解決方法を紹介させていただきました。

私のケースではなぜかBIOSのキャプチャ画像が埋め尽くされており、よくよく調べるとそういう機能がある機種だったことが分かりました。

ですが、本来ならCドライブに出力されるはずなので、なんでこうなってしまったのかは謎なのです・・・

とりあえずこの方法で解決できたので事例として参考にしていただければ嬉しいです。

なにかのお役に立てれば幸いです。

コメント

  1. […] […]

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