rsyncで他のサーバーにデータをミラーリング

まずは、rsyncをインストールする

転送元でrootになりrsyncをインストールする。

yum -y install rsync

cd /root

mkdir .ssh(既にあると思うけどあればやらなくていい)
chmod 700 .ssh
cd .ssh

鍵認証方式
# ssh-keygen -t rsa (-t で鍵の種類を指定)
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): リターンキーを押す
Enter passphrase (empty for no passphrase): パスワードを空にするためこのままリターンキーを押す
Enter same passphrase again: パスワードを空にするためこのままリターンキーを押す
Your identification has been saved in /root/.ssh/id_rsa. 秘密の鍵が出来たよ
Your public key has been saved in /root/.ssh/id_rsa.pub. 公開の鍵が出来たよ

chmod 600 id_rsa

次にid_rsa.pub(公開鍵を)scpコマンド等でバックアップサーバーのrootへ転送する。

バックアップサーバーでrootになりsshdの設定をする
vi /etc/ssh/sshd_config

Port 20222 (ポート番号をかえたければ変更)
Protocol 2 (SSH version 2プロトコルを利用)

PubkeyAuthentication yes(公開鍵認証の有効化)
AuthorizedKeysFile      .ssh/authorized_keys

PermitRootLogin yes (rootで直接ログインしてrsyncコマンドをするのでyes)

PasswordAuthentication no(パスワード認証の禁止)
ChallengeResponseAuthentication no

sshを再起動する。
/etc/rc.d/init.d/sshd restart

cd /root
mkdir .ssh
chmod 700 .ssh
cd .ssh

.sshにid_rsa.pubをもってきて
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

chmod 600 authorized_keys

転送元でrootになりsshでバックアップ元に接続できるか確認
確認が出来たら転送元に戻り

下記を実行してみる
rsync -avz --delete -e "ssh -p 20222" /home/admin/  root@box9.net:/home/backup/

(adminのデータをバックアップサーバーのbackupに保存する。)
(--delete コピー先と同じにする削除されたものは削除する。)
(-v ファイル名を表示する。)
(-z データを圧縮転送)
(-a -rlptgoD オプションをひとつにまとめた)

cronに登録する。
vi /etc/crontab

#rsyncbackup(port指定をしたかったら"ssh -p 20222"んなかんじにする。)
50 3 * * * root /usr/bin/rsync -avz --delete -e "ssh -p 20222" /home/admin/  root@box9.net:/home/backup/

cron再起動
/etc/rc.d/init.d/crond restart

おしまい