自宅サーバー

ご自宅サーバーのバックアップはrdiff-backupがオススメですよ

ご自宅サーバーのバックアップは、夜間のデジカメで撮った写真や動画のrsyncによるフォルダー同期、ブログの内容のMySQLのダンプといった最低限のものだった。が、最近仕事でサーバーインフラの構築についていろいろと勉強したので、もうちょっと真剣にバックアップについて考えてみた。

rsyncによるデジカメ写真の1世代バックアップだが、バックアップ対象のデータはRAID5のディスクにおいてあるので1台までのディスク障害には耐える。しかし、SAMBA経由で見せているWindowsからうっかりフォルダーを削除したりして、夜間のrsyncによるフォルダー同期まで気がつかないとデータが永久に失われてしまう。これが現行のrsyncのバックアップの一番の問題である。仮に日次のrsyncを週次にしたところで、タイミングによってはうっかり削除に対応出来ない点では同じである。

なので、業務データなどでは、週次のフルバックアップ(複数世代)+日次の差分バックアップなどになるのだが、さすがにご自宅サーバーでここまでやるとやり過ぎ感は否めない。

なにかぴったりくるバックアップのソリューションがないかと思ってたどり着いたのが、定期購読しているWEB+DBのバックナンバーの特集「バックアップの研究」である。この特集、実にステキでP.107のバックアップツールの比較表では8項目、8種類が網羅されている。

WEB+DB PRESS Vol.47|gihyo.jp … 技術評論社

最初はbaculaなど複数サーバーのバックアップ、暗号化、自動世代管理、ストレージのプーリングなど高機能なものに最初に目がいったが、さすがに大げさなことに気づいた。結局、この本で一番シンプルなrdiff-backupが非常に気に入った。ステキな点は、以下だ。

  • バックアップされたイメージは常に最新状態で、履歴は逆差分で記録する。
  • バックアップされたイメージは、アーカイブファイルではなく普通のファイルシステムなので、直接lsなどで日本語ファイル名のファイルがちゃんとバックアップされているかなどを確認することができ、安心できる。
  • 古いバックアップの削除機能

とくに1点目は重要だ。一般的なフルバックアップ+順方向の差分だと、ずーっと差分バックアップというのもリスクがどんどん高くなっていくので、一定のタイミングで起点となるフルバックアップを取り直す必要がある。そうすると取り直したフルバックアップ直後の障害に備えて、取り直したフルバックアップ以前にリストアするためには、さらにそのもう1世代前のフルバックアップも必要となるというジレンマがある。結局、本当は1世代のフルバックアップしか必要なくても2世代のフルバックをとらざるを得ない。しかし、逆方向の履歴を持つと起点となるフルバックアップが最新なので1つのフルバックアップだけで、逆差分により任意の時刻へのリカバリーが可能である。ああ、ステキすぎます。

とういわけで、以前のRAID5のトラブル時に唯一生き残ったSeagateの1.5Tをサーバーにつけてバックアップディスクとしてバックアップ運用を開始したところである。

次回は、LVMのスナップショット機能とこのrdiff-backupを使って、無停止でXenのディスクイメージのバックアップをとる方法について書く予定です。

similar posts

comment

よろしければ、コメントをどうぞ。トラックバックはこちら

このエントリーのコメントの購読

次のHTMLタグが使えます。: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

*Required Fields