2026年04月26日

Windowsシステムを元より小さいSSDにクローンする

 職場で、Windows10の古いデスクトップPCをまるごとノートPCに移行する、という事案が発生しました。Windowsのクローン作成は初めてです。ネットで調べたところ、有料のツールはいろいろあるのですが、Clonezilla という Linux ベースのツールを使えば無料でできそうだ、ということがわかりました。

 今回ちょっと厄介なのは、移行先のディスクが移行元のディスクよりも容量が小さいことです。移行元は500GBのHDD、移行先は480GBのSSDなのです。移行元のC:ドライブは100GBぐらいしか使っていないので、データ容量自体は十分に移行先に収まるのですが、どうやって移行するかが問題です。

 再びネットで調べたのですが、どうも結果が芳しくありません。ヒットするのは以下のようなページが多く、有用な情報にはたどりつけませんでした。

  1. 「Clonezillaを使えばできなくはないけど、容量が小さいディスクに移行するならウチのツールを使ってね」という有料ツールの宣伝ページ。
  2. 1. を情報源にしてAIがまとめたページ。
  3. 2. を情報源にして人間がNOTEとかに書いているページ。(それ意味あるんか??)
  4. 質問サイトで誰かが質問して、回答が1.などに誘導しているページ。

 まあ、「ブート可能なディスクを作成する」というのは、結構ハードルが高い作業には違いありません。知識もないのにカネを払わずにやろう、というのは厚かましいというものです。せっかくなので、知識をつける方を選ぶことにしました。

 まず、ディスクの構成がどうなっているのか。今どきのディスクはGPT (GUID Partition Table) でフォーマットされています。公式の解説はここです。

UEFI Specification 2.10

5. GUID Partition Table (GPT) Disk Layout

This specification defines the GUID Partition table (GPT) disk layout (i.e., partitioning scheme). The following list outlines the advantages of using the GPT disk layout over the legacy Master Boot Record (MBR) disk layout...

 ディスクの先頭に MBR(Master Boot Record, 古いタイプのフォーマット)互換ヘッダがあり、その次にパーティション情報を含むテーブル GPT (Primary GPT) があります。GPT はディスクの末尾にもあって (Backup GPT)、Primary GPT が破損したときに修復できるようになっています。

 次に、Windows でブート可能なディスクがどういう構成になっているか。まとまった解説がありました。

Cyber Raiden

Microsoft Windows Partition layout on UEFI/GPT Systems

I. Introduction to UEFI and GPT The evolution of computing platforms has seen a significant shift from legacy firmware and disk partitioning schemes to more advanced and robust standards. ...

(2025年07月23日 20:54)

 要約すると、以下のような構成です。

  1. EFI System Partition (ESP) 。FAT32 ファイルシステムで、この中に \EFI\Microsoft\Boot\bootmgfw.efi というファイルがある。UEFI ファームウェアがこのファイルを読み込むことで、Windows のブートプロセスが始まる。
  2. Microsoft Reserved Partition (MSR) 。通常 16MB のサイズで、ファイルシステムを持たず、Windows が使用する予約スペースになっている。
  3. Windows Partition。いわゆる C: ドライブ。NTFS ファイルシステム。
  4. Windows Recovery Environment Partition (WinRE) 。Windows の診断・トラブルシューティング・修復に使われる。

 ここで、今回の移行元ディスクの中身を見てみました。Windows メニューを右クリックして「ディスクの管理」です。パーティションが4つ見えています。回復パーティションが2つありますが、メーカーによってはこういう構成になっていることがあるようです。なお、MSR は見えないようになっているので、本当は5つのパーティションがあることになります。

20260426-1.jpg

 C:ドライブに空き領域が360GBもあるので、このパーティションを小さくしたい。パーティションを選択して「ボリュームの縮小」を選択して、実行しました。あまりギリギリにすると、立ち上がらなくなりそうな気がしたので、少し余裕をみて、270GBぐらい縮小しました。「未割り当て」領域ができています。

20260426-2.jpg

 Clonezilla がどういう動作をするのか、まだよく理解していないのですが、これをこのまま 480GB のディスクにコピーすると、おそらく一番右にある「回復パーティション」が壊れてしまいます。回復パーティションと未割り当て領域を入れ替えられないのかな……といろいろ調べてみたところ、「回復パーティションをいったん削除して、あとで復活させる」という方法があることがわかりました。おお、センチュリーさんじゃん。懐かしいな。「裸族の村」とか使ってました。

株式会社センチュリー

お客様サポート

回復パーティションの再構築について解説します。クローン機能やコピー機能などで容量の大きいディスクにWindowsの起動ディスクをコピーした場合等にご参照ください。

 手順としては、こうなります。

  1. 管理者権限でコマンドプロンプトを開く。
  2. reagentc /disable を実行。これで、回復パーティション中のファイルがC:ドライブ内の隠しファイルとしてコピーされる。
  3. diskpart を立ち上げて、以下のコマンドを順に実行。
    > select disk 0 (起動ディスクを選択)
    > list partition (回復パーティションの番号とサイズを確認・記録)
    > select partition 5 (上で確認したパーティション番号を指定)
    > delete part override
    

 ここでもう一度「ディスクの管理」を立ち上げると、以下の通り、C:ドライブの後ろがすべて「未割り当て領域」になりました。

20260426-3.jpg

 いったん Windows をシャットダウンして、Clonezilla Live を立ち上げます。公式のチュートリアルを参考にして、内蔵HDDから外付けのSSDにドライブごとコピーします。ただし、途中で「ビギナーモード」ではなく「エキスパートモード」を選んで、「-icds」(ignore check disk size) オプションをつけます。また、パーティションテーブルのオプションは「-k0」(デフォルト)を選んで、元のパーティションとサイズを含めて同じになるようにします。

 さて、SSDをノートPCに接続してみたところ、いきなり「ドライブD:に問題があります」と言われてしまいました。コマンドプロンプトを管理者として開いて、chkdsk d: /f を実施します。「ボリューム ビットマップ エラーを修復します。」とメッセージが出たので、これですかね。

 いったんノートPCの電源を切って、「ブートデバイス選択」モードに入ります(今回使ったノートPCではESCを押しながら電源ON)。SSDを選んで起動→「デバイスの準備をしています」メッセージ→あれ、また起動画面になったぞ?→内蔵ドライブから起動してしまいました。実はこれは前にも経験したことがあります。電源を切って、もう一度「ブートデバイス選択」でSSDを選んで起動、という作業を何度か繰り返すと、そのうちSSDから立ち上がります。ここはなんだか挙動不審で、何か理由があるはずなのですが、まだ解明できていません。(デバイスの準備の後に再起動しようとして、内蔵ドライブで起動してしまっているのかもしれない。未確認)

 起動後「ディスクの管理」を立ち上げると、このようになっていました。未割り当て領域の前の3つのパーティション(不可視のMSRを含めれば4つ)が、移行前と同じサイズでコピーされています。

20260426-4.jpg

 C:ドライブを容量いっぱいまで広げたあと、回復パーティションを再生します。先ほどのセンチュリーさんの記事の後半に書いてあります。

  1. 「ディスクの管理」でC:ドライブ上で右クリック、「ボリュームの拡張」を実行。ウィザードが立ち上がるので、指示に従って進める。
  2. 「ディスクの管理」を終了し、コマンドプロンプトを管理者権限で開く。
  3. diskpartを立ち上げて、以下のコマンドを順に実行。
    > list vol (→ Cドライブのボリューム番号を確認)
    > select vol 3 (Cドライブのボリュームを選択)
    > shrink minimum=522 (回復パーティションのサイズ分ボリュームを縮小)
    > create partition primary (未割り当て領域全部を新しいパーティションとする)
    > format quick fs=ntfs label="Recovery" (NTFS形式でフォーマット)
    > set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac (回復パーティションのGUIDを設定)
    > gpt attributes=0x8000000000000001 (回復パーティションの属性を設定)
    > exit
    
  4. reagentc /enable で回復環境を有効化する。
  5. reagentc /info で「Windows RE の状態: Enabled」になっていることを確かめる。

 「ディスクの管理」の画面は、こうなりました。これで完成です。

20260426-5.jpg

 Windows の起動ディスクのコピーは、「簡単」とは言いませんが、中身を理解した上で手順を踏めば、問題なくできることがわかりました。また、Windows 10 以降は「ハードウェア構成が別のマシンに移行しても起動できる」と聞いていましたが、実際そうであることも確認できました。今回使ったツールの中で、Clonezillaの動作が今のところブラックボックスですが、わりと素直なシェルスクリプトで書かれているようなので、読めば理解できそうです。

Posted at 2026年04月26日 13:41:53
email.png