HDDのまるごと入れ替え

HDDをまるごと入れ替える場合の手順メモ。
基本的にはFreeBSDサイトのQandAに載っている方法を元に細かいところを追加しています。


作成日:2008.7.27
更新日:2008.8.24

前提条件
■パーティションの構成
【コピー元HDD:ad0】
  Part     Mount
  ----     -----
  ad0s1a   /
  ad0s1b   swap
  ad0s1d   /tmp
  ad0s1e   /var
  ad0s1f   /usr

【コピー先HDD:ad1】
  Part     Mount
  ----     -----
  ad1s1a   /mnt
  ad1s1b   swap
  ad1s1d   /mnt/tmp
  ad1s1e   /mnt/var
  ad1s1f   /mnt/usr

■起動前の作業
・必要以上にファイルを書き換えないためにLANケーブルを抜いておく

ページのトップへ

HDDのまるごと入れ替え
1.コピー先となるHDDを接続してコピー元から起動を行い、rootでログインします。

2.コピー作業を始める前に以下のことを行っておきます。
・ログ以外でディスクへアクセス処理を行っているアプリケーションは事前に停止する。
・cronに登録している独自のソフトも停止する。

3.最低でも2台のHDDが繋がっているので間違って他のHDDを選択しないためにも念のためコピー先となるHDDのデバイス名を確認しておきます。
(色分け:入力値コマンドラインコメント)
# atacontrol list
ATA channel 0:
    Master: ad0  Serial ATA v1.0
    Slave:  ad1  Serial ATA v1.0
ATA channel 1:
    Master:      no device present
    Slave:       no device present

4.コピー先のHDDを確認したら次は
(色分け:入力値コマンドラインコメント)
# /usr/sbin/sysinstall
と入力してsysinstallを立ち上げます。

5.「Configure」-「Fdisk」でコピー先HDDを選択してスライスを作成します。手順としては[C]キーを押してスライスを作成して、[W]キーで更新します。
6.スライスを作成したら次は「Configure」-「Label」でコピー先HDDのパーティションを作成します。
このときパーティションの構成はコピー元と同じにしないとfstabの内容と異なって正常に起動できないので余計な手間を増やさないためにも同じ構成にします。 また、マウント先は"/mnt"などのように現在のディスクと重ならない先を指定します。
パーティションの作成が終わったら[W]キーで更新します。このとき一緒にnewfsした方が良いのでもしnewfsの項目が"N"になっていれば[T]キーで"Y"にします。
7.パーティションを作成した時点で既にマウントされていると思いますのであとは"dump"と"restore"コマンドでコピーを行います。
マウントされているかどうかは"df"コマンドで確認できます。
(色分け:入力値コマンドラインコメント)
※もしマウントされていない場合※
# mount /dev/ad1s1a /mnt
# mount /dev/ad1s1d /mnt/tmp
# mount /dev/ad1s1e /mnt/var
# mount /dev/ad1s1f /mnt/usr


# dump 0af - / | ( cd /mnt && restore rf -)
# dump 0af - /tmp | ( cd /mnt/tmp && restore rf -)
# dump 0af - /var | ( cd /mnt/var && restore rf -)
# dump 0af - /usr | ( cd /mnt/usr && restore rf -)

8.コピーが問題なく終われば、リストア時に利用するrestoresymtableがコピー先に作成されているので削除しておきます。
(色分け:入力値コマンドラインコメント)
# rm /mnt/restoresymtable
# rm /mnt/tmp/restoresymtable
# rm /mnt/var/restoresymtable
# rm /mnt/usr/restoresymtable

9.これでデータの入れ替え作業は終わりです。
もしコピー先の接続ポートを変更してデバイス名が変わってしまう場合は"/mnt/etc/fstab"内でデバイス名を変更しておく必要があります。

10.あとはコピー先HDDをコピー元HDDと交換して起動が正しく行えるか確認を行います。


※.もしコピー先HDDを他のPCで起動を行うようなクローンを目的としている場合はシャットダウンする前に"/mnt/etc/rc.conf"のIPに関する設定も変更しておかないと起動時にIPが重複して面倒なことが起こります。

ページのトップへ

参考にしたサイト