システムのバックアップ:Mondo Rescueを試してみる

巷では大手プロバイダがデータ吹っ飛ばしたりして大変なようなので、バックアップについて。

Linuxシステムのバックアップには、いくつかの方法があります。

  • 定期的に他のサーバーにコピーする(tar + gzip + ftpなど。設定や復元が手間?)
  • HAクラスタや二重化サーバーを使う(高額?)
  • RAID構成にする(天災やM/B故障には弱い?)
  • rsyncで同期をとる(2日前などに戻しにくい?)
  • 市販のバックアップソフトを使う(NetVaultなど)
  • オープンソースのバックアップソフトを使う(Mondo Rescure+ftpなど)
今回は、オープンソースのバックアップソフト「Mondo Rescure」を使ってみます。
RAID構成と併用するといいかもしれません。

※以下、自己責任でお願いします。

インストール

ISOイメージで保存したいので「mkisofs」を入れておきます。

# yum -y install mkisofs

高速圧縮ライブラリ「lzo」、高速圧縮ユーティリティ「lzop」も入れておきます。

# yum -y install lzo lzop

その他、いろいろ必要なパッケージもインストール。

# yum -y install dosfstools mtools parted cdrecord syslinux

以下をwgetなどで取得しておきます。
ftp://ftp.mondorescue.org/rhel/6/x86_64/afio-2.5-1.rhel6.x86_64.rpm
ftp://ftp.mondorescue.org/rhel/6/x86_64/buffer-1.19-4.rhel6.x86_64.rpm
ftp://ftp.mondorescue.org/rhel/6/x86_64/mindi-2.1.2-1.rhel6.x86_64.rpm
ftp://ftp.mondorescue.org/rhel/6/x86_64/mindi-busybox-1.18.5-1.rhel6.x86_64.rpm
ftp://ftp.mondorescue.org/rhel/6/x86_64/mondo-3.0.2-1.rhel6.x86_64.rpm

(頻繁にアップデートされていますが、不具合の修正ではないですよね???)


Mondo Resucureをインストールします。

# rpm -ivh *.rpm

バックアップ

以下、主なオプションです。(詳細はこちら
-Oバックアップ
-iISOファイルを生成
-d [ディレクトリ]バックアップイメージの出力先
-E [ディレクトリ]...バックアップ対象外(/mnt, /proc, /sys, /run, /tmpは指定しなくてよい)
-s [サイズ]CDイメージの場合700m、DVDは4480m
-S [ディレクトリ]作業用ディレクトリ(ISOイメージ生成前)
-T [ディレクトリ]作業用ディレクトリ(ISOイメージ以外)
-p [ファイル名]出力ファイル名

/backupを作成しておき、を実行してみます。

# mkdir /backup
# mondoarchive -Oi -d /backup -E /backup -s 4480m -S /tmp -T /tmp -p `hostname`_`date +%Y%m%d`

シングルユーザーモード(init 1)でバックアップするのが理想ですが、サーバーを停止するのが難しい場合には、整合性を保つためにデータベースなどは別にバックアップしたほうがよいと思います。(MySQLであればmysqldumpなど)

あとはdvdrecordコマンドでDVDに焼くなり、ftpして保存しておくなりします。

※"mondoarchive -d /mnt/cdrom" で直接書き込むこともできますが、書き込みに失敗する場合もあるので、ディスクに余裕があるならまずハードディスクに保存したほうがいいようです。

# ls /backup
-rw-r--r-- 1 root root 552132608 Jun 29 16:48 test.example.com-20120629.iso

リストア

DVDから起動し、boot:プロンプトで「interactive ramdisk_blocksize=1024」と入力してEnter。

※101キーボードになっているかもしれません。
"_"・・・=(Shiftキーを押しながら"ほ"のキー)
"="・・・^("へ"のキー)

しばらくすると以下の画面になるので、2つめの「Interactively」を選択。

※元のサーバーと復元先のサーバーがまったく同じハードウェア構成であれば、「Automatically」でいいかもしれません。未検証。


復元元を選択。

TABキーで移動して「OK」。

この後「消去してよいですか?」などと聞かれますが、すべて「OK」「YES」などで。
最後はこんな画面です。

「cd /bootして、mkinitrd -f -v initrd-2.x.y.img 2.x.yとタイプして、exit」と書かれているので、その通りに。

# mkinitrd -f -v initrd-2.x.y.img 2.x.y
# exit

viでいくつかファイルが開くので、終了します。:qですが、101キーボードなので
":"・・・+(Shiftキーを押しながら";"キー)
です。

最後にexitすると、再起動します。

# exit

リストアされたか確認して完了です。

※元のサーバーと復元先のサーバーのディスクサイズが違う場合などでは、このままでは無理かもしれません。"mondo rescure リストア"などで検索してみてください。

  • Spread The Love
  • Digg This Post
  • Tweet This Post
  • Stumble This Post
  • Submit This Post To Delicious
  • Submit This Post To Reddit
  • Submit This Post To Mixx

0 Response to “システムのバックアップ:Mondo Rescueを試してみる”

Leave a Reply