vine-users ML アーカイブ



[vine-users:071038] HD 交換の 報告及び質問

  • From: Satoru Otsubo <otsubo_p@xxxxxxxxxxxxxxx>
  • Subject: [vine-users:071038] HD 交換の 報告及び質問
  • Date: Tue, 22 Mar 2005 14:10:03 +0900
大坪といいます。ハードディスクを交換しましたので、その手順を報告致します。
間違っている点、より好ましい方法等を御指摘下さい。また種々の質問もあります。
宣しくお願いいたします。

vine 2.6r1 の入った HD (以下 old HD) がいっぱいになりましたので、若干
大き目のHD  (以下 new HD) に移し換えました。old HD の partition 構成は、
/dev/hda1   /boot
/dev/hda2   /
/dev/hda3   swap
です。

1) new HD をIDE の primary secondary に接続して、new HD を
 old HD と同じ partition 構成にする。
  # fdisk /dev/hdb

2) /dev/hdb1 にdestructiveな read-write testを行い、ext3 の
ファイルシステムを作り、/boot のラベルを付す。
  # mke2fs -cc -L /boot -j /dev/hdb2
(/etc/fstab が Label=/ 、 Label=/boot 等となっているのは、partition
自身に付された label により、file system の位置を見出すということの
ようです。これにより、old HD と異なる number の partition にコピーした
場合は、/etc/fstab を変えることなく、ラベル引数の指定のみでよい
ようです。なお、e2label のコマンドでも同様の作業ができるようです。)

3) /dev/hdb2 にdestructiveな read-write testを行い、ext3 の
ファイルシステムを作り、/ のラベルを付す。
  # mke2fs -cc -L / -j /dev/hdb2

4) /dev/hdb3 に Linux swap area のセットアップ
  # mkswap /dev/hdb3

5) 一旦 shutdown して,single mode で入る。
  boot: linux single

6) directory 作成
  mkdir /mnt/hdb1 /mnt/hdb2

7) mount する
  mount -t ext3 /dev/hdb1 /mnt/hdb1
  mount -t ext3 /dev/hdb2 /mnt/hdb2

8) currentry directory の変更
  cd /mnt/hdb1

9) /dev/hdb1 へデータのコピー
  dump 0f - /boot | ( cd /mnt/hdb1 && restore rf - )
(8で currentry directory の変更をしているので、ここで再び
cd /mnt/hdb1 とする必要はないと思いますが、single mode
では、currentry directory が prompt に表示されませんので、
安全をとってここでも cd /mnt/hdb1 とするということでしょうか?)

10) currentry directory の変更
  cd /mnt/hdb2

11) /dev/hdb2 へデータのコピー
  dump 0f - / | ( cd /mnt/hdb2 && restore rf - )

12) lilo.conf のコピー
  cp /mnt/hdb2/ext/lilo.conf /mnt/hdb2/ext/lilo.conf.hdchange

13) lilo.conf.hdchange の書換え
prompt
timeout=50
default=linux
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
message=/boot/message
linear

image=/boot/vmlinuz-2.4.19-0vl11
        label=linux
        read-only
        root=/dev/hda2

image=/boot/vmlinuz-2.2.20-0vl10
        label=linux-2.2-up
        read-only
        root=/dev/hda2
を
disk=/dev/hdb bios=0x80
prompt
timeout=50
default=linux
boot=/dev/hdb
map=/mnt/hdb1/map
install=/mnt/hdb1/boot.b
message=/mnt/hdb1/message
linear

image=/mnt/hdb1/vmlinuz-2.4.19-0vl11
        label=linux
        read-only
        root=/dev/hda2

image=/mnt/hdb1/vmlinuz-2.2.20-0vl10
        label=linux-2.2-up
        read-only
        root=/dev/hda2
へ
(new HD の boot directory (/mnt/hdb1) を用いないといけないようです? /mnt/hdb1 
内のファイルの在処をアドレス等として MBR 内に記録するのでしょうか?)
(最初、disk=/dev/hdb bios=0x80 なしで、行いましたが、起動時に L の表示のまま
止まってしまいました。disk=/dev/hdb bios=0x80 はどういう意味があるのでしょう?)

14) ファイルを指定してlilo
  lilo -C /mnt/hdb2/etc/lilo.conf.cdchange

15) new HD を primary master に繋換えて、起動。


(他の質問) 今回は同じマシンにて HD を交換しましたが、MB が壊れる等により、
old HD 又は これをコピーしたnew HD を新しいマシンに入れる場合もあると
思います。この場合に、どのようになるのでしょうか? 自動的に kudzu により
新しい hard ware を検知してそのドライバを入れて行き、新らしいマシンで
問題なくこのHDは動くのでしょうか ?