Windowsを新規インストールすると、「システム予約済みパーティション(SRP)」と呼ばれる小さなパーティションが作成されます。これは隠れた場所にあり、ドライブ文字も割り当てられていないため、何か問題が発生するまで存在に気づかない人が多いのが特徴で、Windows 10では通常約500MBですが、以前のバージョンではさらに小さいサイズでした。ディスクの管理ではC:\のすぐ前にあり、重要なブート情報が保存されている小さな隠し領域です。
その役割とは?Windowsがブートローダー、BCD(ブート構成データ)、そしていくつかの回復ツールを保存する場所です。特にBitLocker暗号化やUEFI(新しいBIOS)を使用している場合など、一部の設定では、このパーティションはシステムが正常に起動するために不可欠です。このパーティションが欠落しているか破損している場合、Windowsは起動しないか、ブートファイルが見つからないという不可解なエラー(boot\BCDエラーなど)を表示します。
ここからがおかしな話になります。空き容量を増やすために削除できるかと聞かれるのですが、手動で復旧作業を行う覚悟がない限り、削除してはいけません。SRPがないということは、起動できないということです。パーティションを縮小または削除しようとすると、Windowsは正常に動作しているのに変更に対応できないというエラーが表示されるなど、問題が発生することがあります。そして、本当にパーティションが消えてしまった場合、Windowsは起動を拒否し、次のようなエラーを表示しますFile: \boot\BCD, Status: 0xc00000f。そこで、やばい、パーティションを再作成するか、ブートローダーを手動で修正する必要があるかもしれないと気付くのです。
システム予約済みパーティションを修正または再作成する方法
方法1: コマンドラインツールでブートローダーを再構築する
SRPが欠落または破損している場合、通常、これが最も速いアプローチです。少し技術的ですが、試してみる価値はあります。基本的には、bcdbootとその他のコマンドを使用して、Windowsのブートファイルをシステムドライブに直接再作成します。なぜこれが役立つのでしょうか?それは、必要なブートローダーと構成ファイルをWindowsが想定する場所に配置するため、欠落しているSRPをメインドライブに置き換えることで問題が解決するからです。
まず、回復ドライブまたはインストールメディアを使ってWindows回復を起動する必要があります。起動したら、コマンドプロンプトウィンドウを開きます。(Windowsインストールメディアの場合は、Shift + F10キーを押して起動します。)
diskpart list volume
システム ボリューム (通常は C:) を識別し、次のコマンドを実行します。
diskpart select volume C assign letter=C exit
次に、次のコマンドを実行して、ブートローダ ファイルを C: にコピーします (Windows が C: にあると想定)。
bcdboot C:\Windows /s C: /f BIOS
UEFI を使用している場合は、/f BIOSを に置き換える必要がある場合/f UEFIがあります。これにより、別のパーティションを必要とせずに、ブートファイルが Windows ドライブに直接コピーされます。
最後に、以下を実行します。
bootrec /fixmbr bootrec /fixboot bootrec /scanos bootrec /rebuildbcd
再起動して、Windowsが正常に起動するかどうかを確認します。この方法はSRPを完全にバイパスするため少し奇妙ですが、パーティションサイズを変更せずにWindowsを再起動するだけであれば、確実な解決策となります。
方法2:手動で新しいシステム予約済みパーティションを作成する
SRPが削除されたり、そもそも作成されなかったりした場合、ミニパーティション分割に慣れているなら、新しいSRPを作成できます。まず、を使用してC:パーティションを500MB縮小しますdiskpart。
diskpart list volume select volume 1 <-- or your Windows partition shrink desired=500 create partition primary format fs=ntfs quick active assign letter R exit
これにより、新しい小さな NTFS パーティションが作成され、アクティブとして設定され、フォーマットされ、文字 R が付与されます。その後、そこにブート ファイルを配置できます。
bcdboot C:\Windows /s R: /f BIOS
おそらくこれで準備は完了です。しかし正直なところ、ほとんどの人にとっては、ブートローダーをC:(メインドライブ)にコピーする方が簡単です。特にSRPは今ではほとんどがレガシーなものですから。
SRPが消えた後にWindowsが起動しなくなった場合
パーティションが失われ、Windowsが起動しなくなった場合でも、まだ解決の糸口はあります。Windowsリカバリメディアから起動し、diskpartSRPが表示されるかどうかを確認してください。表示されない場合は、上記の方法で再作成または復元してください。あるいは、手っ取り早く済ませたい場合は、メインドライブのブートローダーを で修復するだけで解決できますbcdboot。ただし、状況によっては、特にUEFIシステムの場合は、OSの完全な再インストールや修復が必要になることもあります。
Windows 10で「システム予約済みパーティションを更新できませんでした」
これはアップデート中によくある問題です。SRP が小さすぎて新しいブートファイルを保持できないという問題で、特に古いバージョンの Windows からアップグレードした場合は顕著です。通常、0xc1900104や などのエラーが発生します0x800f0922。解決方法は?不要なファイル(R:\Boot\Fonts のフォントキャッシュなど)を削除して SRP の空き容量を増やすか、あるいはもっと良い方法として、サードパーティ製のパーティションマネージャーを使ってブート可能な USB からパーティションを拡張します。というのも、SRP に新しいファイル用のスペースが見つからないと Windows はアップグレードできないからです。
この記事が、システム全体の再インストールや慌てた復旧作業を避けるのに役立つことを願っています。SRPの修正(または回避策)は難しい場合がありますが、一度マスターしてしまえば、適切なコマンドを実行したり、適切なツールを使うだけで済みます。頑張ってください!
まとめ
- 何らかのコマンドラインマジックの準備ができていない限り、システム予約済みパーティションを削除しないでください。
- パーティション ツールを使用してブート ファイルを再作成または修正できます
bcdboot。 - Windows が起動しない場合は、回復モードで起動し、SRP が存在するかどうかを確認し、必要に応じて復元します。
- SRP が小さすぎると Windows のアップグレードが失敗する可能性があります。SRP を大きくするか、スペースをクリーンアップしてみてください。
まとめ
全体的に見て、SRPをいじるのは難しそうに思えるかもしれませんが、これらのコマンドとツールを使って慎重に取り組めば、絶対に可能です。ほとんどの問題は、ブートファイルの欠落または破損、あるいはパーティションが正しく設定されていないことに起因します。そのため、データのバックアップを保管し、問題が発生しても慌てないでください。通常、ブートローダーを再作成または修正するだけでWindowsが再起動します。これで誰かの時間短縮につながることを願っています。