FreeBSD 8上的Rsync同步簡易教程
原創【51CTO技術精選】Rsync是一個非常方便的同步工具,尤其適合海量的小文件在二臺服務器之間同步。在Linux下配置rsync比較容易,那要是在FreeBSD 8下面呢?其實也不是太困難,大家按照如下操作即可:
目標:在一臺CentOS 5.5的Linux機器上-IP:192.168.4.194下的/var/www/website/newg下的所有圖片自動rsync(不能輸入密碼)到FreeBSD 8下的/usr/data下
推薦專題:企業內網開發環境部署與管理全攻略(FreeBSD+PHP)
準備工作:
在FreeBSD8下創建用戶及給權限等
sudo pw useradd admin sudo passwd admin sudo mkdir -p /usr/data/ sudo chown admin:admin /usr/data/
為了避免同步時的錯誤,/usr/data最好給予寫權限
sudo chmod o+w /usr/data/
在FreeBSD8下安裝rsync
#cd /usr/ports/net/rsync #make install
配置rsync服務端
#sudo vim /usr/local/etc/rsyncd.conf
添加以下內容
[www] comment = web server backup path = /www auth users = woody uid = nobody gid = nogroup secrets file = /usr/local/etc/rsyncd.pass read only = no
配置rsyncd.pass
#sudo vim /usr/local/etc/rsyncd.secrets
加入以下內容
admin:123456 // 認證所需的用戶名/密碼 建議設置強密碼 #sudo chmod 600 /usr/local/etc/rsyncd.pass
配置rc.conf,加入以下內容:
rsyncd_enable="YES"
啟動rsync的daemon模式
#sudo vim /usr/local/etc/rc.d/rsyncd
修改這一行內容,使用IPV4協議
command_args="-4 --daemon"
配置到此ok了。現在啟動Rsync:
#sudo /usr/local/etc/rc.d/rsyncd start
檢查Rsync daemon啟動狀態
# sockstat | grep rsync root rsync 586 3 dgram -> /var/run/logpriv root rsync 586 4 tcp4 *:873 *:*
接下來是Rsync客戶端配置(這里我是用的root身份)
1、配置rsyncd.pass
#vim /usr/local/etc/rsyncd.secrets
加入以下內容
123456 //Rsync Server上的認證密碼,不用輸入用戶名 #chmod 600 /usr/local/etc/rsyncd.pass
2、進行第一次同步
rsync -vzrtopg --password-file=/usr/local/etc/rsyncd.pass /var/www/html/newg 192.168.4.222::data
很順利成功了。
要實現自動同步的話,可以將上面的這行命令保存為一個sh文件,比如backupdata.sh,然后放進crontab里面每天00:01分的時候執行即可:
00 00 * * * root /bin/bash /data/backup/backupdata.sh
有關Rsync的更多用法,可參考: