アーカイブ

Archive for 2011年9月

rsync+btrfsでsnapshot

サーバーの全体バックアップをとるのにbtrfsのsnapshotを使いたかったが、メインのファイルシステムをbtrfsにしたくはない。
というわけで、rsyncでbtrfsのsubvolumeにコピー→snapshotを作る、という流れにしてみた。

1. btrfsで新ディスクをフォーマット
fdiskをいじるのが面倒だったのでここだけGUIでやった。
btrfs関係のツールがなかったのでyumでインストール。
# yum install btrfs-progs

2. btrfsのsubvolumeを作る
# mount -t btrfs -o compress /dev/sdb1 /mnt/backup
# btrfs subvolume create /mnt/backup/latest

3. snapshot用ディレクトリを作る
# mkdir /mnt/backup/snapshot

4. 試しにsnapshotを作ってみる そして邪魔なので消す
# btrfs subvolume snapshot /mnt/backup/latest /mnt/backup/snapshot/test
# btrfs subvolume delete /mnt/backup/snapshot/test

5.自動化する
#!/bin/bash
rsync -avz –delete –exclude-from ‘/root/backup_exclude.dat’ / /mnt/backup/latest > /root/snapshot.log
btrfs sub snap /mnt/backup/latest /mnt/backup/snapshot/`date “+%Y%m%d”` >> /root/snapshot.log

excludeのリストはこんなかんじ
– dev/
– proc/
– sys/
– tmp/
– mnt/
– run/
– var/run
– var/lock

広告
カテゴリー:GNU/Linux