「rm -rf /*」をやった

ワザとじゃなくてミスで。
とりあえず、スレーブのHDDにcronで日次ミラーしてたので何とか復旧できたけども。。。
効果的なのは分かったので今後のためにもミラーリングシェルスクリプトと復旧手順を個人的メモであげておく。

※前準備としてスレーブHDDをマスタと同じ構成でFdiskしておくこと。

ミラーリングスクリプト

#!/bin/sh

echo "`date +%Y-%m-%d\ %k:%M:%S`: start syncing" >> /var/log/backup.log

/bin/mount -t xfs /dev/sdb3 /mnt/sdb 2>> /var/log/backup.log
/bin/mount -t ext3 /dev/sdb1 /mnt/sdb/boot 2>> /var/log/backup.log


/usr/bin/rsync -aH --delete \
    --exclude=/proc \
    --exclude=/sys \
    --exclude=/mnt \
    /* /mnt/sdb

if [ ! -d "/mnt/sdb/proc" ]; then
  mkdir /mnt/sdb/proc
fi
if [ ! -d "/mnt/sdb/sys" ]; then
  mkdir /mnt/sdb/sys
fi
if [ ! -d "/mnt/sdb" ]; then
  mkdir /mnt/sdb
  mkdir /mnt/sdb/boot
fi

/bin/umount /mnt/sdb/boot 2>> /var/log/backup.log
/bin/umount /mnt/sdb 2>> /var/log/backup.log

echo "`date +%Y-%m-%d\ %k:%M:%S`: end syncing" >> /var/log/backup.log

あとはcronなりでタスクに登録しておく。



やっちまったときは慌てずにマスターとスレーブを切り替えて、BootCDから起動。

そのあと、以下のような感じでGRUBをインストールして再起動すればおk。
※注:これはウチの環境の場合です。

$ mkdir /mnt/sda
$ mount -t xfs /dev/sda3 /mnt/sda
$ mount -t ext3 /dev/sda1 /mnt/sda/boot
$ grub-install --root-directory=/mnt/sda /dev/sda
$ shutdown -r now

人為的トラブルに備えてRAID以外のミラーはやっぱり必要だと心底思った。