2006年5月 6日

KnoppixによるHDD換装

GWに実家に帰り、弟のPCを使ったら、徐々にファンはうるさくなるわ、電源落としたら起動しなくなるわで、転ばぬ先の杖、HDD換装とCPUファン換装、システムファン2台を追加した。
そのときに、市販のソフトを一切利用せずにWindows 2000 (win2k) FAT32システムをコピーしたので覚え書きとしてここに記す。

弟のPCは
ASUS P4G800-V
Celeron D 2.4GHz
PC2700 DIMM 512MHz 1枚
Seagate 40GB HDD (ATA-100)

この40GBのHDDをMaxtorの160GB HDD (ATA-133)に換装するため、HDD内容をコピーする。
40GBのHDDはFAT32でWiondws 2000だけが1パーティションにインストールされ、NTブートローダで起動する、標準的なWin2Kシステムだ。

まずは、Knoppix 4.0のCDイメージをダウンロードし、CD-Rに焼く
(弟のPCはDVD+-Rがないので、CDに収まるイメージとして4.0を採用)
BIOSでIDEモードをCompatible P-ATA Onlyとする。
(S-ATAを活かすとKnoppixがCDを認識しない)

元々ある40GBのHDDをPrimary-Master
新しい160GBのHDDをPrimary-Slave
起動用のCDはSecondary-Master

Knoppixを入れて起動させると

boot:

と出てくるので

knoppix dma

として、DMAを有効にして起動。

こうすると、HDDは
元々のHDDは"/dev/hda"
新しいHDDは"/dev/hdb"
として認識される。

KDEメニューからターミナルを起動して、suする。

% su -

そして、GNU partedを使って、新しいディスクを準備する。
まずはGNU partedを起動する。このとき、操作対象のHDDを指定する。
操作対象は新しいHDDだ。

# parted /dev/hdb

ディスクラベルがないとかいわれるので、まずはディスクラベルの作成から。

> mklabel msdos
続いて元々のHDDのパーティションサイズを確認する。 元々のHDDを選択すると何かおかしいと聞かれるので、Ignore(iを入力)を選択。
> select /dev/hda
(途中省略) Ignore/Cancel? i

パーティション内容の確認には、printを入力

> print

Disk geometry for /dev/hda: 0.000-4xxx.xxx megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.031 4yyy.yyy primary fat32 boot

ここで、第1パーティションが0.031から始まることがわかるので、新しいパーティションも0.031から作ることとする。
新しいディスクに戻って新しいパーティションを作成する。このとき、ファイルシステムまで作必要はない。

> select /dev/hdb (新しいディスクの選択)

> mkpart primary fat32 0.031 4yyy.yyy

新旧のディスクのパーティションサイズがそろったところで、内容のコピーです。
あ、そうそう、私は忘れたのですが、ディスクのDMAモードを設定しておいた方がよいかと思います。
そのときには、partedに入る前に、


# hdparm -d1 -c1 -X69 /dev/hda
# hdparm -d1 -c1 -X69 /dev/hdb

(そういえば、MaxtorはATA-133をサポートしてますが、Xの値ってどうするんでしょね?)

話を元に戻してコピーです。両ディスクともパーティションは1つしかありませんので、両方のパーティションマイナー番号は1です。

(partedの続き)

>cp /dev/hda 1 1

これでコピーが始まります。
hdparmを有効にしていない状態で40GBを40分程度でコピー完了。
このまま終わると40GBしか使っていないので、160GBに広げる。
まずはprintで容量を確認。

> print

Disk geometry for /dev/hdb: 0.000-15xxx.xxx megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.031 4yyy.yyy primary fat32

リサイズする。
やっかいなことにならないように、1MB程度、小さめにリサイズしておいた。(もっと小さくてもよいと思うけどネ)

> resize 1 0.031 15zzz.zzz (resizeのあとの1はパーティション番号1の意味)

リサイズが終わったら、Partedを抜けます。

> quit

#

最後に、NTブートローダが存在するMBR(マスターブートレコード)をコピーします。
まずは、元々のレコードからバックアップを持ってきて、knoppixのシステム上に保存します。

# dd if=/dev/hda of=~/mbr bs=512 count=1

そして、knoppix上に保存したMBRを書き込みます。

# dd if=~/mbr of=/dev/hdb bs=446 count=1

knoppix上の作業はここまで。まずはシャットダウン。

# shutdown -h now

あとは、新しいディスクをMasterにするだけです。

今知ったことですが、この技はNTFSには使えないそうです。
やっぱFAT32か。

トラックバックURL

このエントリーのトラックバックURL:
http://nns-fact.2y.net/mt/mt-tb.cgi/11

コメントする


画像の中に見える文字を入力してください。