実は現在のサーバ構成的に、データ領域はRAIDで組んであるが、OS領域は全く多重化されていない。クラッシュしたらこれまでの設定がすべて水の泡である。
ということで、OS領域をまるごとバックアップ出来て、リストアも簡単にできるという「Mondo Rescue」をインストールしてみた。
【参考サイト】
基本としてこちらを参考にさせていただきました。
→ Mondo Rescueでお手軽バックアップ(1): 緊急時に備えてリカバリDVDを作る
【インストール(注意点のみ)】
1.周辺環境インストール
サイトにしたがって、色々インストールしておきます。
・リポジトリの取得は次の通り。
# wget ftp://ftp.mondorescue.org/rhel/6/x86_64/afio-2.5-1.rhel6.x86_64.rpm
# wget ftp://ftp.mondorescue.org/rhel/6/x86_64/buffer-1.19-4.rhel6.x86_64.rpm
# wget ftp://ftp.mondorescue.org/rhel/6/x86_64/mindi-busybox-1.18.5-1.rhel6.x86_64.rpm
# wget ftp://ftp.mondorescue.org/rhel/6/x86_64/mindi-2.1.0-1.rhel6.x86_64.rpm
# wget ftp://ftp.mondorescue.org/rhel/6/x86_64/mondo-3.0.0-1.rhel6.x86_64.rpm
・インストール実行(root権限)
rpm -ivh *.rpm
※インストール済モジュールがあれば取り除く。
2.バックアップメディアを用意
以前用意したRAIDサーバに指定。
3.自動マウント設定(参考)
/etc/fstab を設定。
※実はここで設定をミスってOSが起動しなくなる…。書き換えたくてもファイルがreadonly属性で、管理者権限でも書き込めない!
ということと以下のサイトを参照。read write属性でマウントし直すと解決。
→ 【CentOS】起動しなくなった
※接続していたHDDと、後付けUSBメモリもパーティション名が変化した!元々USBでやろうとしたがこれが問題でやめた。
○初回
HDD: /dev/sda1、 USBメモリ: /dev/sdc1
○再起動後
HDD: /dev/sdc1、 USBメモリ: /dev/sda1
これがランダム。
4.実際にバックアップ
私の環境では以下のコマンドで実行。私の環境では1.7GB 程度になりました。
sudo mondoarchive -Oi -g -s 4480m -d /mnt/raidsrv/ -S /tmp -T /tmp -E /mnt -p `hostname`_`date +%Y%m%d`
O: バックアップを取る。
i: ISO形式で保存。
g: 進行状況をGUIで簡易表示。
s: 容量指定。・インストール実行(root権限)
rpm -ivh *.rpm
※インストール済モジュールがあれば取り除く。
2.バックアップメディアを用意
以前用意したRAIDサーバに指定。
3.自動マウント設定(参考)
/etc/fstab を設定。
※実はここで設定をミスってOSが起動しなくなる…。書き換えたくてもファイルがreadonly属性で、管理者権限でも書き込めない!
ということと以下のサイトを参照。read write属性でマウントし直すと解決。
→ 【CentOS】起動しなくなった
※接続していたHDDと、後付けUSBメモリもパーティション名が変化した!元々USBでやろうとしたがこれが問題でやめた。
○初回
HDD: /dev/sda1、 USBメモリ: /dev/sdc1
○再起動後
HDD: /dev/sdc1、 USBメモリ: /dev/sda1
これがランダム。
4.実際にバックアップ
私の環境では以下のコマンドで実行。私の環境では1.7GB 程度になりました。
sudo mondoarchive -Oi -g -s 4480m -d /mnt/raidsrv/ -S /tmp -T /tmp -E /mnt -p `hostname`_`date +%Y%m%d`
O: バックアップを取る。
i: ISO形式で保存。
g: 進行状況をGUIで簡易表示。
d: バックアップ先指定(マウント済みのUSBメモリ)
S: スクラッチ
T: テンポラリ
E: 対象外ディレクトリ(パス末尾に/を入れる上手くいかない!!)
→Stray Penguin - Mondo Rescue
p: 名前指定。上記で指定すると、PC名_作成日.iso となる。
5.DVDに焼く
念のためリカバリディスクをDVDに焼いておきます。そもそもOSがやられたらUSBにアクセス出来ませんから笑。それに、家が家事になったら堪らないので、DVDを会社においておきます。
6.自動バックアップ設定
毎日22:00に自動でUSBにISOファイルを書き出す設定をします。
まず、実行用スクリプトを作成。
vi /root/scr/mondoarchive.sh に下記を記載。
#!/bin/bash
#archive OS Image
sudo mondoarchive -Oi -g -s 4480m -d /mnt/raidsrv/Backups/CentOS -S /tmp -T /tmp -E /mnt -p `hostname`_`date +%Y%m%d`
#delete files created before a week ago (24h x 7 = 168h)
tmpwatch -m 168 /mnt/raidsrv/Backups/CentOS
sudo vi /etc/crontab
で以下の行を追加。
00 22 * * * root /root/scr/mondoarchive.sh
→crontabの書き方
cron再起動
/etc/rc.d/init.d/crond restart
【おまけ】
【終わりに】
今回もちょっとハマりました。でもこれで一安心。
会社にDVDを置くので、家が火事になってもOS領域は復元できます。RAIDサーバ内のデータだけはどうしようもないです。2TBも持ち歩けません…。
cron再起動
/etc/rc.d/init.d/crond restart
【おまけ】
rootのviをカラーにする
# vi /etc/profile.d/vim.sh
idで除外している部分をコメントアウトする
→ PerlとmySQL忍々【終わりに】
今回もちょっとハマりました。でもこれで一安心。
会社にDVDを置くので、家が火事になってもOS領域は復元できます。RAIDサーバ内のデータだけはどうしようもないです。2TBも持ち歩けません…。