有時候,會有一種需求,就是兩台獨立主機之間,常常需要做快速的遠端備分。這種時候,rsyncd的server mode就派上用場了。
server 端:
(1) 透過WHM ,去開啟873這個port的firewall
(2) mkdir /home/bk_server1
mkdir /home/bk_server2
(3) 寫好 /etc/rsyncd.conf
<pre>
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log #
[server1]
path = /home/bk_server1
auth users = bk_user
uid = root
gid = root
secrets file = /etc/rsyncd.secrets
read only = no
[server2]
path = /home/bk_server2
auth users = bk_user
uid = root
gid = root
secrets file = /etc/rsyncd.secrets
read only = no
</pre>
(4) 寫server side的密碼檔
vi /etc/rsyncd.secrets
<pre>
bk_user:XXXXXXXXXXXXXXX
</pre>
密碼檔設置完後,
chown root:root /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets
(5) 修改 /etc/xinetd.d/rsync
將 disable = yes 改成 disable = no
(6) service xinetd restart
(7) 確認 xinetd 有沒有去聽 rsync的 873 port
netstat -ntlp |grep 873
( 必須出現才是合理的。)
client 端:
(1) vi /root/rsyncd.secrets
注意,內容的格式和 server端的不同,只有密碼,而沒有user name
XXXXXXXXXXXXX
(2) chmod 600 /root/rsyncd.secrets
(3) 用下列的command就可以sync了。
例如,將client side的 /root,備分到 server 端的 /home/bk_server1
<pre>
rsync -avHz –password-file=/root/rsyncd.secrets /root bk_user@yourhost.com::server1
</pre>
(4) 在crontab 中,加入上述的command