はじめてのrestore
- 公開日: 2009/04/02(木) 07:30[JST]
土曜日にサーバのアップデートをしようとしたら、間違ってシステムの重要なファイルを消してしまった。
バックアップは毎晩取っているので、金曜夜のバックアップから復旧させることにした。私の場合、バックアップ先はmount_smbfsで接続した玄箱なので、通常行われているFixitによる復旧は多分できない。と、いうことで、当初はUSBメモリにインストールしたシステムから起動して復旧しようと思ったんだが。
使用したUSBメモリが特売品だったからか、ある程度長時間アクセスをするとUSBメモリのエラーが頻発し、サーバが勝手にリブートしてしまうという怪現象が。
結局、ハードディスクに通常使うシステムとは別のシステム用のスライスを数G作成し、そこにrestore用のFreeBSDをインストールした。restore専用なので、ソースやportsなど、容量を食うものは外した。で、/boot/loader.confに、
libmchain_load="YES" smbfs_load="YES"
の二行を追加し、再起動。すると、mount_smbfsで玄箱の共有ボリュームをマウントできるようになるので、そこからrestoreを行った。ハードディスク内に2つのOSがインストールされることになったため、再起動してメインのシステムを起動する際にはキーボードが必要になった(FreeBSDのブートローダはキーボードから一定時間入力が無いと前回起動したシステムを起動するため、次回以降の再起動はキーボード無しでOK)。ディスプレイ・キーボード切替器を買っておいて幸いだったというか。
で、その後、もう一度システムのアップグレードをして、level0 dumpを行って、ようやく昨晩サーバが復旧した。やれやれ。でもいい勉強にはなった。