メイン

2007年04月25日

サーバー故障からの復活

ちょっと前にサーバーが故障しました。M/Bでしょう。全然起動しなくなってたから。
しかたなく予備のサーバーに切替えたら、昨年の9月までさかのぼっちゃいました。
動かないよりいいか・・・と思いつつぼちぼちと直しに入ってたのですが
本日、ようやく環境復旧が済みました。
結局のところ、新たに予備サーバーをたてるとこからはじめ、そこに、壊れたサーバーのHDDをくっつけます。そこからこんどメインになったサーバーへ必要なファイルを持ってくるって事で対応します。
どんな風にもってくるか、がミソ
まず、前述通り予備マシンに壊れたサーバーのHDDをくっつけてマウント
 mkdir /mnt/old
とか適当にディレクトリを作っておいて
 mount -t ext2 /dev/hdc3 /mnt/old
って感じでマウント。
メインサーバーがデータを引っこ抜くのですが、ネットワーク経由でファイルを転送するので事前にscpやrsyncが使える様にキーセットを作っておきます。(以前書いたバックアップの解説のところ参照しました)
で、
scp 10.0.0.5:/mnt/old/var/www /var -rf
ってコピーしたのですが、これだとパーミッションが書き換わっちゃたりオーナーも全部rootになっちゃうからあとが大変。FTPやら、このBlogなどのcgiが書き込めなかったり、mysqlの設定とMovabletypeのデータが違ってておかしくなってたりと、大変。
ぜひ属性を変えずにディレクトリを持ってきたいもんだと思ったら、rsync、やるじゃん。
rsync -avx -e ssh 10.0.0.5:/mnt/old/var/www /var
ってな具合で、ガガーっとすんなりおんなじ構成にしてくれるって、おみごとです。
久々にlinuxのシェル触った・・・・・