今回は、パソコンネタ(サーバーネタ)です。興味の無い方は読み飛ばして下さい。
このエントリーで、世の中のどこかのサーバー管理者の役に立てることを願って。私の備忘録という話も。
さくら事務所では、Cybozu(サイボウズ)というスケジュール管理ソフトを使っています。このソフトで、システム設定の中に、サイボウズで使うデータのバックアックをすることが出来ます。
データの多重化を行なうため、ローカルにFTPで定期的にダウンロードしようかと思いました。
しかし、このサイボウズ標準のバックアップシステムでは、データのディレクトリを丸ごとコピーするだけのもの。
FTPでダウンロードしやすいよう、圧縮を考えてみました。サーバーは、Linux系です。
時間的な流れでは、以下のようになります。
- Cybozuの標準機能でデータをバックアップ(最大5世代)
- 作成されたバックアップディレクトリをtar、gzipで圧縮
- FFFTPを使って、圧縮されたファイルをローカル側へダウンロード
サイボウズの標準機能でデータをバックアップすると、指定した保存先に、「cbbackup(世代名)」のディレクトリが作成されます。
世代名は、作成の年月日時分秒になります。
つまり、yyyymmddhhmmss形式。
サイボウズのバックアップ保存先を /var/cbbackup、圧縮先を/var/cbbackup-compress とすると、圧縮のためのコマンドは以下の通り。
/bin/sh[Enter]
set `date +%Y%m%d`[Enter]
usr/bin/find /var/cbbackup -type f -name '*.mrr' -mtime -1 -exec rm '{}' ';'[Enter]
find /var/cbbackup -type d -name 'cbbackup*' -mtime -1 -print > /var/cbbackup-compress/bklist$1.txt[Enter]
cd /var/cbbackup-compress[Enter]
/bin/tar zcvf cbbackup$1.tar.gz -T bklist$1.txt[Enter]
最初に、今日の年月日の数字を、変数 $1に代入
次に、サイボウズによって勝手に作られる、*.mrrファイルを容量削減のために削除。
1日前までに更新されたディレクトリのリストを作成
ディレクトリ移動
リストを元にして、ディレクトリを圧縮
という流れです。
このコマンドにより、2008年6月23日のバックアップデータは、/var/cbbackup-compress/というディレクトリに、cbbackup20080623.tar.gz というファイル名で保存されます。
コマンドが正しく動くのを確認した後、cronジョブに登録しておきます。
ちなみに、dateコマンド、tarコマンドは環境によって位置が異なる可能性がありますので、それぞれwhich date、which tar で確認して下さい。
参考にさせて頂いたサイト(ありがとうございます)
・ディレクトリ下の定期バックアップ
・office7のリストア検証
・RedHat-Linuxメモ
↓ランキングに参加中。このブログは今何位?
にほんブログ村


