簡単!ハードディスクコピー

パソコンを構成している部品のハードディスクは大切なデータを保存している貴重な記憶装置です。このハードディスクが壊れてしまうと今までの成果が全て失われることとなってしまいます。このハードディスクの破損の危険性を回避するにはハードディスクを定期的に交換する方法が確実な方法です。

単純に新しいハードディスクに今までと同じ環境を構築するなどはとても非生産的なものです。現実にはハードディスクの内容をコピーして使用しているものです。

またハードディスクの劣化の前にハードディスクが容量不足となってしまうこともあり、より大きなハードディスクへ交換しなければならなくなることもあります。そこでもハードディスクのデータのコピーが必要となってきます。

そこでもっとも簡単で手軽だと思っているハードディスクのコピーについて紹介します。

なおこの紹介したコピー方法を使用してハードディスクのコピーに失敗しても当方は一切の責任を負いません。ご自身の責任において行ってください。自信がない読者さんは決してご自身で行おうとしないでください。誰かよく解る人にお願いするか業者さんへ頼んで作業をしてもらってください。

その方法とはコピー元となるハードディスクをディスクイメージ(*1)として dd コマンドによって新しいハードディスクへコピーをした後、GParted を使用して新しいハードディスクにコピーされたディスクイメージを調整して新しいパーティションを作成したり 従来からあるパーティションを拡大するものです。
*1 : ハードディスクのデータをいわゆる 0 1 の模様としてとして取り扱うものです。

dd コマンドによるハードディスクイメージはどのようなフォーマットであろうともコピーすることができます。しかし GParted によるパーティションの整備にはいくつかの制約条件が伴います。Windows で使用されている FAT FAT32 NTFS のいずれも GParted による調整が可能です。(*2) そのため Windows のユーザーには朗報かと思います。その他 Linux の各ディストリビューションで使用されている ext2, ext3, ext4 に対応可能です。残念ながら FreeBSD などで使用されている UFS には非対応です。
*1 : GParted の開発元は動作保証をしているわけではありません。無保証です。

その他の制約条件としては次のものがあります。

コピーされるハードディスクの容量と同一容量またはそれ以上の容量を備えているハードディスクが必要です。

コピー作業を行うパソコンには二台のハードディスクを接続できる装備がある必要があります。

ハードディスクのコピー方法

新旧のハードディスクをパソコンへ接続します。写真はイメージです。

PartedMagic などのようなハードディスクのメンテナンスを目的とした 1CD Linux を起動させます。最新版の PartedMagic がお奨め(第一選択)ですが英語表示となります。日本語による表示を希望される場合には日本語版 Puppy Linux がお奨め(第二選択)です。

仮想端末(ターミナル)上から dd コマンドを使ってハードディスクの内容をまるごとコピーしてしまいます。

# dd if=/dev/sda of=/dev/sdb

ドライブ名は実際にコピーするドライブ名を使用します。if= にはコピー元のハードディスク、of= には新しいハードディスクを記述します。sda, sdb だけでなく hda, hdb という場合もあります。(*3)

*3 : ドライブ名の調べ方は次の方法で出来ます。以下のコマンドで反応があれがそのドライブが存在します。

dmesg | grep sda
dmesg | grep sdb
dmesg | grep hda
dmesg | grep hdb

この dd コマンドによるコピーは大変時間がかかります。もちろん容量が大きければ大きい程時間がかかります。進捗状況もよくわかりませんので不安になると思いますが半日単位で時間が掛かるものと諦めてコマンドが終了するのを待ちましょう。

また dd コマンドは取消ができません。即実行されてしまいます。ハードディスクのドライブ名を間違えると大変なことになります。Enter キーを押して実行する前に深呼吸してもう一度ドライブ名を確かめましょう。

dd コマンドが終了したらコピーは完了です。ただし新しいハードディスクは古いハードディスクと同じ容量で同じ構成のままの状態となっています。このままでは単純にハードディスクを古いものから新しいものにしただけの状況です。

ここで GParted を使って新しいハードディスクに適用した環境を構築します。

1CD Linux の GParted を起動させると現在のハードディスクの内容が表示されます。ハードディスクの後方が未使用の状況になっているはずです。この部分を活用するようにします。

Windows の場合には C ドライブのみの1パーティション状態であればそのまま現在ある C ドライブを拡大するようにします。またデータ領域として D ドライブがある場合には D ドライブを拡大するようにします。

Linux の場合にも1パーティションの状態であればそのままパーティションを拡大します。複数のパーティションが設定されている場合には /home (hda9,sda9など) の領域のパーティションを拡大するようにします。

これらの一連の作業でハードディスクのコピーは完了です。後は古いハードディスクを撤去して新しいハードディスクを古いハードディスクが接続されていたコネクタへ接続してパソコンの電源を入れてパソコンが立ち上がるのを確かめます。

パソコンを起動させるハードディスクの先頭部にある MBR 領域は最初の dd コマンドでコピー済みですのです。基本的にコピーが正常に行われていればパソコンは今まで通りに立ち上がるはずです。またパソコンのデスクトップ環境もそのままコピーされているため全てが今まで通りのはずです。ただし Windows の場合には新しいハードディスクが新しいデバイスとして認識されるため何らかのメッセージが一時的に表示されるはずですが一度きりの表示のはずです。

注意事項
IDE ドライブから SATA ドライブなどのようにインターフェースの異なるドライブへコピーすることも可能です。しかし SATA ドライブのように比較的新しい規格のドライブの場合にはドライバーが事前に導入されている必要があります。ドライバーがインストールされていない場合にはドライブが認識されません。ご注意ください。