はじめに
本エントリは自分用の作業メモです。役に立つ部分ももしかしたらあるかも。。。では
現在我が家で動作しているFreeBSDマシンは、もうかれこれ3〜4年前から動作している。途中でCPUやマザーボードを交換したりしたが、HDDは当初からずっとそのまま使っている。
別に今は問題も出ていないし、ディスク容量も二台合わせて16Gあるので十分なのだが、もうそろそろいつHDDが壊れてもおかしくない年数が経ったので交換することにする。
基本方針はOSの再インストールは行わずに今の構成をそのまま新しいディスク一台にコピーすることである。
現在の物理構成
現在は物理的に以下の様にディスクが繋がっている。
| プライマリ:マスタ | WDC AC26400R(6GB) |
| プライマリ:スレーブ | CD-ROM |
| セカンダリ:マスタ | IBM-DTTA-351010(10GB) |
| セカンダリ:スレーブ | CD-RW |
WDCの方にOSが入っており、IBMはデータディスクになっている。
パーテション構成
OSのパーテション構成は以下の通り(CD系は省略)
| マウントポイント | デバイス | サイズ | 備考 |
| / | /dev/ad0s1a | 128MB | |
| swap | /dev/ad0s1b | 560MB | 実メモリが320MBなので640MBに増やしたい |
| /var | /dev/ad0s1e | 256MB | ログを大量に保管するには少なすぎ |
| /tmp | /dev/ad0s1f | 256MB | これはmfsを今後使う |
| /usr | /dev/ad0s1g | 4.9GB | FreeBSDの全コンパイルには丁度いい容量だがもう少し多いとよい |
| /home | /dev/ad2s1e | 320MB | 特に使用用途もないので適度なサイズ |
| /share | /dev/ad2s1f | 9.3GB | Webデータやsambaの共有データがある ここはいくら多くても大歓迎 |
新たなHDDの取り付けとパーテション切り
既に物理的な記憶装置は4台フルに繋げてしまったので、とりあえずCD-RW(セカンダリ:スレーブ)を外してそこに新しいHDDを繋げることにする。これで、デバイス名はad3になるはず。
続いて/stand/sysinstallの[Configure]-[Fdisk]でad3を選択。FreeBSD用空間を最大限に確保し、MBRの設定も行う。家のマシンは他のOSは入れていないのでStandardを選択する。
ここで一度再起動してから次のステップであるパーテション切りに入る。
再び/stand/sysinstallで[Configure]-[Label]でad3を選択、以下の様にパーテションを切る。newfsもこの場でやってもらう。
| マウントポイント | デバイス | サイズ |
| /mnt | /dev/ad3s1a | 128MB |
| swap | /dev/ad3s1b | 640MB |
| /mnt/var | /dev/ad3s1e | 2GB |
| /mnt/usr | /dev/ad3s1f | 6GB |
| /mnt/home | /dev/ad3s1g | 1GB |
| /mnt/share | /dev/ad3s1h | 残り全て |
再び再起動するか、上のマウントポイントを手動でマウントする。
ファイルのコピー
多分ファイルのコピーはシングルユーザモードでやった方がいいと思います。それかLANケーブルを抜き、できるだけサービスを止めた状態で行ったほうがコピー中の不整合とかなくなっていいと思う。。
コピーはdump&restoreを使用する。以下のコマンドでできるとFreeBSD Q and Aに書いてあった。
| # dump 0af - / | ( cd /mnt && restore rf -)
# dump 0af - /var | ( cd /mnt/var && restore rf -) # dump 0af - /usr | ( cd /mnt/usr && restore rf -) # dump 0af - /home | ( cd /mnt/home && restore rf -) # dump 0af - /share | ( cd /mnt/share && restore rf -) |
コピーが完了したら、/mnt配下の各マウントポイント直下にあるrestoresymtableというファイルを削除する。
fstabの修正
コピーが終わったらコピー先のfstabを修正します。でないとこのディスクで起動しなくなってしまう。
HDD置換後は新しいディスクをプライマリ:マスタに接続するのでデバイス名はad0になるはずです。よって以下の様に修正する。
/dev/ad0s1b none swap sw 0 0 /dev/ad0s1a / ufs rw 1 1 /dev/ad0s1b /tmp mfs rw 2 2 /dev/ad0s1e /var ufs rw 2 2 /dev/ad0s1f /usr ufs rw 2 2 /dev/ad0s1g /home ufs rw 2 2 /dev/ad0s1h /share ufs rw 2 2 /dev/acd0c /cdrom cd9660 ro,noauto 0 0 /dev/acd1c /cdrw cd9660 ro,noauto 0 0 proc /proc procfs rw 0 0 |
ディスク交換&再起動
古いHDDを二つとも取り外し、新しいHDD(セカンダリ:スレーブ)をプライマリ:マスタに接続して、再起動するとOSが新しいディスクから立ち上がる(はず)。
おわりに
意外と簡単にシステムの移行ができたと思われる。
投稿者 yotan : 2004年2月 4日 00:00| トラックバック(0)※コメント内にURLを書くとSPAM扱いとなります。2ch風に表記はOKです


