rsync 同步檔案
阿新 • • 發佈:2018-11-14
一. 場景:利用rsync實現在負載均衡情況下,專案檔案程式碼實現指定頻率同步
二. 安裝:
1.檢測是否安裝rsync服務
rpm -qa|grep rsync
2.服務端和客戶端安裝rsync
yum -y install rsync
也可原始碼安裝
rsync下載地址:http://rsync.samba.org/
安裝方式
./configure
make && make install
伺服器A,B都安裝rsync服務。A為主伺服器,A伺服器以伺服器模式執行rsync,而B則以客戶端方式執行rsync。
當A伺服器有檔案變更時,B同步變更檔案。一實現檔案同步。
三. 服務端配置:
1. 伺服器A配置
vi /etc/rsyncd.conf #根據自己的檔案目錄而定
#[globle] strict modes = yes port = 873 uid = root gid = root user chroot= no max connections = 5 #同時的最大連線數 timeout = 600 pid file = /var/run/rsyncd.pid #程序的pid存放位置 lock file = /var/run/rsyncd.lock #locak檔案位置 log file = /var/log/rsyncd.log #日誌檔案位置 [eeetb.com-rsyncd] #建立一個同步名,伺服器B通過此名稱獲得同步位置 path= /home/wwwroot #需要同步的檔案存放位置 ignore errors read only = no list = no hosts allow = 47.94.255.44 #允許伺服器B地址,如果是內網可以使用內網IP auth users = root #允許哪些使用者 secrets file = /etc/rsyncd.password #指定允許的使用者和密碼
2. 建立使用者密碼檔案
vi /etc/rsyncd.password
root:123456 #允許的使用者和密碼
3. 修改防火牆策略,允許873埠(tcp/udp)
vi /etc/sysconfig/iptables #加入下面規則 -A INPUT -s 47.94.255.44 -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT
4. 啟動rsync服務端
/usr/bin/rsync --daemon --config=/etc/rsync.conf
新增rsyncd開機啟動
echo '/usr/bin/rsync --daemon --config=/ect/rsyncd.conf' >>/etc/rc.local
四. 客戶端配置:
1. 客戶端伺服器B配置
vi /etc/rsyncd.password 123456 #伺服器A設定的密碼
2. 啟動客戶端
/usr/bin/rsync -avzP --delete --progress --password-file=/etc/rsyncd.password [email protected]地址::eeetb.com-rsyncd /home/wwwroot/
3. 設定定時任務
略。。。
五. 注意:
- 客戶端啟動 注意密碼檔案 檔案許可權必須為 600
- 服務端,客戶端密碼一致性(注:服務端:使用者:密碼 客戶端: 密碼)