ssh を使わず rsync でバックアップ

ssh を経由してリモートホストにログインしてrsyncでバックアップを取る方法は沢山情報がありますが、意外とrsyncプロトコルを使う方法は情報が少ないので書いてみたいと思います。



まず、基本的なところですが、クライアントからは以下の書式でコマンドを叩きます。


rsync -av /バックアップ元ディレクトリ/ rsync://バックアップ先ホスト名/モジュール名/バックアップ先ディレクトリ/

例:
rsync -av /home/ rsync://192.168.0.1/export/home/

URL形式でリモートホストを指定するので、「モジュール名」のところを「ディレクトリ名」と勘違いしそうですが、ここは「モジュール名」です。

「モジュール名」とは、rsyncのデーモンがエクスポートしている場所のようなもので、一般的にリモートホスト側の /etc/rsyncd.conf で指定します。


例:
# RSYNC Server Configuration
uid = root
gid = root
[export]
path = /mnt/backup
comment = export path
read only = false
ここまで準備できたら、リモートホストrsyncのデーモンを起動します。


rsync --daemon -v --log-file=/var/log/rsync.log
後は、先に説明した書式でクライアント側からコマンドを叩けばバックアップ開始です。