Oct 22, 2005

rsyncによるバックアップ

ぼくのhomeディレクトリの、web公開ディレクトリはけっこう複雑ではある。
webサーバとしてのルートディレクトリは、/var/www/(これはDebian GNU/Linuxの場合)。
homeディレクトリのweb公開ディレクトリはpublic_html。
サーバとクライアントが同じLAN上にあり、両方Linuxならば同期するのはそれほど難しくはない。ただ、別のディストリビューションだと、web公開ディレクトリ上で動的に生成されるファイルのオーナー、グループの名前が違う。もし、同じディストリビューションで、同じApacheのバージョンならば、

$rsync -avz -e ssh shimirin@example.com:/home/shimirin/public_html/ /home/shimirin/public_html

とやって、バックアップしたくなったら、このコマンドを打てば全部のファイルの同期がとれる。
-a は、アーカイブモードでの転送。ファイルのオーナー、グループ、パーミッション、時間(、デバイス、シンボリックリンク)を保存する。
動的ファイルが生成されていないならば、これですべてOKの感じ。
この場合、rsyncが両方のマシンにインストールされている必要がある。
rsyncは2つの同名の内容が異なるファイルのとき、「異なる部分」だけを抽出して転送するらしい。効率的。
ぼくもこのrsyncをだんだん利用しはじめた。
自宅サーバをやっている人がいつも感じると思われる「喉の小骨」が、バックアップだ。
一歩進めば、暗号化技術のrsaの公開鍵を生成して、cronで30分おきなどに自動でやれば、「喉の小骨」はもうないような(^^)。

WriteBacks
TrackBack ping me at
http://www.haizara.net/~shimirin/blosxom/blosxom.cgi/computer/linux/20051022224742.trackback
Post a comment

writeback message: Ready to post a comment.













Captcha:
To prevent comment spam, please retype the characters in this image:

Enter the text here: