rsync によるミラーリング

ホスト側    → バックアップ基(実稼動サーバ)
クライアント側 → バックアップ先(バックアップ用サーバ)

rsyncportsからインストール(ホスト側、クライアント側両方にインストール)

# cd /usr/ports/net/rsync
# make install clean

ホスト側にてrsyncデーモン用の設定ファイルの編集

# vi /usr/local/etc/rsyncd.conf

                                                                                                  • -

# rsyncd.conf - Example file, see rsyncd.conf(5)
#

# Set this if you want to stop rsync daemon with rc.d scripts
pid file = /var/run/rsyncd.pid

# Edit this file before running rsync daemon!!

uid = [ユーザーid]
gid = [グループid]
use chroot = no
max connections = 4
syslog facility = local5

[設定名1]
comment = rsync dir
path = /home/[ディレクトリ名称]
auth users = [認証ユーザー]
secrets file = /etc/rsyncd.secrets  ←ユーザー管理ファイル(rsyncd専用)
host allow = 127.0.0.1, 192.168.1.21 ←アクセス許可
host deny = *             ←アクセス拒否
strict modes = true

                                                                                                  • -

:wq!

rsyncd.secrets ファイルの準備

# cd /usr/local/etc
# vi rsyncd.secrets

                                                                                                  • -

ユーザー名:パスワード

                                                                                                  • -

:wq!

# chmod 600 rsyncd.secrets

これでホスト側の準備OK

クライアント側でパスワードファイルの生成

# vi /etc/.ps1

                                                                                                  • -

[平分パスワード]

                                                                                                  • -

# chmod 600 .ps1

クライアント側にて以下のコマンドを実行すれば、ミラーリングが行われる。

# rsync -azuv --delete --password-file=/etc/.ps1 rsync://[認証ユーザー]@192.168.1.6/[設定名1]/public_html /home/[ユーザーディレクトリ名]

上記のrsyncコマンドでは、192.168.1.6 のホストの設定ファイルで設定したrsyncd設定ファイル内の [設定名1] の pathにて設定されたディレクト
以下のpublic_htmlディレクトリをクライアント側の/home/[ユーザーディレクトリ名] 以下にフルミラーリングを行う。
コマンド完了後は、完全にディレクトリ構成が一致することになる。