Windows7でクリーンインストールせずにリカバリ領域を削除してみた

先日新調したPCですが、リカバリ領域(RECOVERY)が邪魔だったので消してみました。

ちなみに、このリカバリ領域を消す場合、PC到着後すぐにリカバリメディアを作ってOSのクリーンインストールするのが普通(というか一番手間が少なくて障害も少ない)らしいのですが、そもそも消して良いことを知らず(ここが素人っぽいところですよね…)気付いたころには結構アプリをインストールしてしまってました。
でも、SSDが128GBしかないので心もとないし、仮想メモリとかキャッシュディスクとして使える領域を増やしたいし、けど、ドライバ用再インストールディスクはないし(OS再インストールディスクは万が一のために最初に購入しておいたので持ってました。)なんとか、クリーンインストールとか上書きインストールとかせずにリカバリ領域を消したい!

ということで、試行錯誤の末、無事にクリーンインストールせずにリカバリドライブを消すことに成功したので、作業メモ的に書いておきます。

基本的にEASEUS Partition Masterとコマンドプロンプトのbcdbootでいけます。(私は最後にミスってOS再インストールCDを使いましたが、上手くやれば多分使わなくて大丈夫です。)念のため、コマンドのdiskpartはググったりしてさらっておくとミスった時に役に立つかも。

※お決まりですが、実行するときは自己責任でお願いします。あと、手順は省きますがリカバリディスクの作成バックアップは必ずしてください。
※あと、Win7のultimateだと上手くいかないかも?【参考】Windows 7 – 100MBのパーティション(システムで予約済み)を消す方法
※あ、ちなみに、リカバリディスクとOS再インストールディスクは別物です。念のため。

システムパーティションとブートパーティション

まず、前提として、通常Windows7の場合、システムパーティション(ブートファイルがある)とブートパーティション(OSがある)に分かれていて、システムパーティションがアクティブになっているとOSが起動するようになっています。若干ややこしいですが、これを理解してから作業に移るとスムーズ&ミスった時にパニックにならずに済みます。

【参考】システム パーティションとブート パーティションとは

DELLの場合、このシステムパーティションがリカバリ領域に指定されています。「スタート->すべてのプログラム->コンピュータを右クリック->管理->ディスクの管理」で見ると以下のようになっています。
※次項からの作業はこの構成を前提に進めていきます。

リカバリ 領域: システム、アクティブ、プライマリ パーティション
OS(C:): ブート、ページ ファイル、クラッシュ ダンプ、プライマリ パーティション

※人によってはその他のパーティションも存在します。

もし、他のメーカーのPCでリカバリ領域以外のパーティションがシステムパーティションでアクティブになっていたら(この場合、ほとんどが「システム予約済み」領域がアクティブになっていると思います)、リカバリ領域はこの時点で消して問題ないはずです。(リカバリメディアの作成は忘れずに。)

私と同じ様に上記の設定になっていたら、リカバリ領域を削除する前に、別のシステムパーティションを作ってそこにブートファイルを作成するか、リカバリ領域からブートファイルを取り出してOS(C:)のパーティションに移動する必要があります。

ちなみに、間違えてOS(C:)のパーティションや他のドライブをアクティブにしてしまうと、再起動時に「BOOTMGR is missing」(私の場合「Operating System not found」)が出てOSを読み込めなくなります。
その場合は再インストールCDかWindows PEなどを利用して、修復する必要があります。(持っていなければ前者をDELLから購入か、後者を別PCで作成することになります)

【参考】「BOOTMGR」とは何か

アクティブになってるとリカバリ領域が削除出来ないからといって、 「OS(C:)にOSが入ってるんだからこっちをアクティブにしちゃえばいいじゃん、えい♪」ってやると痛い目に遭います。(私です、、)

ブートファイル一時保管用パーティションの作成

上の仕組みが理解できたら、作業に移ります。
まず、ブートファイルを一時的に保管するためのパーティション(以下、保管領域)をEASEUS Partition Master(以下EPM)で作ります。この時、リカバリ領域とOS(C:)パーティションの間に作るのがポイントです。私はリカバリの前(左側)に作ってしまったため、あと一歩というところでOS再インストールディスクを使うハメになりました。。

EPMの操作手順の詳細は省きますが、リカバリ領域かOS(C:)を縮小して未割り当て領域作成->プライマリ、NTFSでフォーマットでOKです。ラベルとパスは適当で良いですが、パスは必ず付けてください
容量は100MBくらいで良いんじゃないかと思います。(クリーンインストール時のシステムパーティションは100MBが確保されるらしいので。)ちなみに、ピッタリ100MBにはならないので、そこら辺はアバウトで大丈夫と思います。(きっちりしたい人は未割り当てを作ったらdiskpartでどうぞ)

リカバリ領域の削除とブートファイルの作成

ここが一番大事な手順です。ここからは慎重に進めてください。もし、途中で誤って再起動したり、急にお腹が痛くなってトイレに行ったらオートスリープになっちゃったみたいなことをすると、起動できなくなります。
それと、もしかしたら、同じように作業が進まない人がいるかもしれません。その時は、まだ取り返しがつくところでストップ出来るはずなので、素直に取り返しに行ってください。

まず、先ほど作成した保管領域をアクティブにします。「スタート->すべてのプログラム->コンピュータを右クリック->管理->ディスクの管理」から保管領域を右クリックして「パーティションをアクティブとしてマーク」を選択します。
すると以下のような警告が出ますが、気にせず「はい」を選択してください。

アクティブ警告

この状態で再起動をかけるとアウトです。ただし、「はい」を選択後でも再度リカバリ領域をアクティブにすれば、もとの状態に戻ります。それを頭に入れて次に進みます。

次は、アクティブが外れたリカバリ領域を削除します。
リカバリ領域を右クリックし「ボリュームの削除」を選択します。この時、下の警告が出るか、「正常にプログラムが動かなくなります」というような警告が出ます。(もしくは下の警告の後に左の警告が出たかも…すみません、自分の時はこのタイミングでは出なかったので正確に把握していません。。)

ボリューム削除警告

この警告画面で「はい」を押して、削除が完了(未割り当てになる)すればOK。別の警告画面が出た場合は、「いいえ」を選択して引き返すか、自己責任の名のもとに削除を実行してください。(再インストールCDがあれば削除しても多分修正可能。てか、もし持ってたらこの時点でCDから起動して操作した方が早いかも)
ちなみに、「はい」を押して実行すると後戻りが出来なくなります。削除した後に再起動はもちろんNGです。

削除が無事に完了したら、保管領域にブートファイルを作成します。
「スタート->すべてのプログラム->アクセサリ->コマンドプロンプトを右クリック->管理者として実行」(もしくは、スタート->プログラムとファイルの検索欄にcmdと入力してctri+shift+enter)でコマンドプロンプトを立ち上げます。立ちあがったら以下のコマンドを実行します。

bcdboot c:¥Windows /l ja-jp /s d:
(最後のd:は保管領域のパスを入力)

【参考】
BCDboot のコマンドライン オプション
Windows7での回復パーティション、システムパーティション作成方法

これで、保管領域にブートファイルが作成されます。作成されたら保管領域がアクティブになっていることを確認しておきます。(ちなみにファイルが作成されてもエクスプローラーからは参照できません。中身を確認する場合はEPMで保管領域を右クリック、explore partitionを選択ししてください。)
この時点ではこんな感じになっているかと。

リカバリ削除後

ちなみに、私のPCでは、これまでは表示されていなかったカードリーダーの(空の)リムーバブルディスク達が突然表示されてしまいました。メディアを差していなくてもスロットの分だけ表示されるのは普通らしいのでこれは放置。

※補足ですが、一度、前のステップでリカバリ領域を削除せずに保管領域に対してbcdbootを実行してみたのですが、「ブート ファイルをコピーしようとして、エラーが発生しました」となってブートファイルの作成ができませんでした。どうやら、他のパーティションにブートファイルが存在すると、エラーになるらしいです。

保管領域のコピーと新システムパーティションの作成

ようやく終盤です。
未割り当てになっている部分に、EPMで保管領域のコピーを作成します。(これが新システムパーティションになります。)保管領域がアクティブになっていることを確認してからコピーを実行してください。(手順通りにしていればアクティブになっているはずです。)

この時、一番左(OEMパーティションがある場合はその次)に作成し、容量は保管領域と同じかそれ以上、ラベルは無記入、パスは「none」を選んでください。仮に間違えて左側に隙間を作ったとして、パーティションを左に動かす(EPMのGUIでクイクイッとする)様な事をするとサヨウナラです。私はこれでOS再インストールディスクに頼らざるをえなくなりました。
あと、ラベルとパスは未記入にすることで、新システムパーティションがエクスプローラーで表示されなくなります。もし、エクスプローラーで表示されるようにしたければ、任意のラベルとパスを付けてください。

Applyを選択すると、再起動します。この時、保管領域がアクティブになっていないと再起動に失敗します。再起動後、保管領域のコピーが作成されます。
次に、「スタート->すべてのプログラム->コンピュータを右クリック->管理->ディスクの管理」からこの保管領域のコピーを選択し、アクティブにします。アクティブにしたら、すぐに再起動します。(ここで再起動せずに次のステップに行くとアウトです)
再起動後、再度「ディスクの管理」にアクセスし、パーティションの「状態」を確認します。保管領域のコピーの状態が「システム、アクティブ、プライマリ パーティション」になっていたら成功です。これが新システムパーティションになります。

上記の確認が取れたら、保管領域を削除して、EPMでOS(C:)を拡張すれば終了です。
こんな感じになりました。先ほど108GBだったOS(C:)の容量が119GBになっています。

リカバリ削除完

ちなみに、作業実行前のベンチマーク。

ssdベンチマーク

作業終了後のベンチマーク。

ssdベンチマーク2

若干のムラはあるけどアライメントも崩れてなさそうだし、とりあえずいけそう!
このまま様子見て、何かあれば追記しま~す。

その他に参考にしたサイト:
Windows 7 にてブート領域の構築
win7 システムの修復

※2015.6.5 追記

EaseUSの担当者の方からご連絡頂き、公式ダウンロードページを掲載してほしいとのことでしたので、下に載せておきます。
こんな小さなブログも見られているんですね~。(現在の最新バージョンは10.5だそうです)

http://jp.easeus.com/partition-manager-software/