安裝
yum install -y rsync
yum install -y xinted // 這個(gè)不知道是用來(lái)干嘛的
配置
配置有分很多種辖佣,首先找到rsyncd.conf路徑,一般在etc文件夾內(nèi)卷谈。不知道就find一下
find / -name 'rsyncd.conf
vim rsyncd.conf
- 全局配置參數(shù)
- motd file
用于向連接端展示消息用,消息可以自己在指定文件中設(shè)置端逼,默認(rèn)空污淋,進(jìn)程命令:
--dparam=motdfile=motd file
- pid file
用于守護(hù)進(jìn)程寫(xiě)入進(jìn)程id用寸爆,必填項(xiàng),進(jìn)程命令:
--dparam-pidfile=pid file
- port
指定rsync運(yùn)行的端口號(hào)赁豆,默認(rèn)873魔种,命令:
--port=873
- address
用于設(shè)置rsync監(jiān)聽(tīng)的ip地址,命令:
--address=IP
- socket options
用于設(shè)置socket套接字配置,具體查看socket配置項(xiàng)配置属韧,命令:
--sockopts=opts
- 模塊配置參數(shù)(常用)
- comment
連接端接入該模塊時(shí)展示于模塊名稱(chēng)旁蛤吓,默認(rèn)無(wú) - path
指定該模塊允許訪問(wèn)的文件路徑 - use chroot
當(dāng)該參數(shù)為true時(shí),rsync默認(rèn)會(huì)吧path作為該模塊訪問(wèn)的根路徑樊破,可選值:true/false - daemon chroot
當(dāng)改參數(shù)為true時(shí)唆铐,rsync會(huì)將守護(hù)進(jìn)程的chroot路徑指定為該模塊下的path奔滑,默認(rèn)不設(shè)置朋其,可選值:true/false - proxy protocol
當(dāng)開(kāi)啟該參數(shù)時(shí),會(huì)拒絕沒(méi)有攜帶代理報(bào)頭的連接端梅猿,意思是如果是true的話,需要轉(zhuǎn)發(fā)代理ip待rsync中钞啸,否則連接端就會(huì)直接請(qǐng)求到rsync中喇潘,默認(rèn)不開(kāi)啟,可以使用開(kāi)啟密碼訪問(wèn)的方式來(lái)提高安全性絮吵〕佬迹可選值:true/false - max connections
指定該模塊最大并發(fā)連接數(shù),默認(rèn)無(wú)限制(-1/0) - log file
用于指定寫(xiě)入日志的文件路徑伴嗡,必填項(xiàng) - lock file
該文件用于限制最大并發(fā)數(shù)脏毯,必填項(xiàng) - read only
開(kāi)啟/關(guān)閉連接端讀權(quán)限 - write only
開(kāi)啟/關(guān)閉連接端寫(xiě)權(quán)限 - list
文檔看的不大懂 - uid
指定rsync運(yùn)行進(jìn)程時(shí)哪個(gè)用戶(hù)/文件是可用的,通常與gid配合使用 - gid
指定一個(gè)組別 - auth users
指定該模塊可訪問(wèn)的用戶(hù)渣淤,設(shè)置后連接端訪問(wèn)該模塊時(shí),需要輸入正確密碼才能訪問(wèn)嗅定,多個(gè)可用空格或者逗號(hào)隔開(kāi)用踩,示例:
bob,jane // 指定兩個(gè)用戶(hù)可連接
bob:deny,jane // bob不可連接
bob, @guest jane:deny mark // guest組下的jane不可連接
bob:r,jane:w // bob只讀,jane只寫(xiě)
- secrets file
指定用戶(hù)賬號(hào)密碼碎乃,當(dāng)auth users有設(shè)置的話惠奸,連接端連接時(shí)會(huì)去該文件中比對(duì)連接端的賬號(hào)密碼是否正確,格式:
username:password
- hosts allow
設(shè)置允許訪問(wèn)的ip地址梗掰,默認(rèn)不設(shè)置嗅回,格式:
hosts allow = IP1[, IP2| iIP2...]
- hosts deny
設(shè)置不允許訪問(wèn)的ip地址,默認(rèn)不設(shè)置 - ignore errors
是否忽略文件傳輸中的錯(cuò)誤埂陆,可選值:yes/no - timeout
rsync取消連接端建立連接的超時(shí)時(shí)間
使用
- 本地文件同步
rsync -r fileA fileB 將fileA文件夾及其子文件同步到fileB的fileA文件夾中
rsync -r fileA/ fileB 將fileA文件夾及其子文件同步到FileB中
-r 遞歸文件夾
rsync -a fileA fileB 以歸檔模式將fileA同步到fileB的fileA文件夾中
-a 歸檔模式尘分,包括遞歸培愁、軟連接、權(quán)限定续、時(shí)間修改信息、分組修改信息摹察、所有者倡鲸,保存原信息
rsync -v fileA fileB 展示fileA同步fileB的所有狀態(tài)信息
-v 展開(kāi)顯示詳細(xì)信息
rsync -z fileA fileB 將fileA同步到fileB,并且在傳輸過(guò)程中壓縮文件數(shù)據(jù)
rsync --process fileA fileB 傳輸過(guò)程中顯示傳輸進(jìn)度
rsync --exclude='*.txt' fileA fileB 傳輸時(shí)排除.txt結(jié)尾的文件
多個(gè)排除可以這么寫(xiě)
1. --exclude=suffix1 --exclude=suffix2
2. --exclude='{suffix1,suffix2}'
3. --exclude-from=exclude file
rsync --include='*.txt' fileA fileB 在傳輸時(shí)還需將.txt結(jié)尾的文件也同步過(guò)去
- 遠(yuǎn)程拉取
需要兩端都要安裝rsync
1. 遠(yuǎn)端拉取
rsync -av [auth users]/[root]@HOST::[module_name] file
[auth users] 發(fā)送端rsyncd.conf中設(shè)置的auth users配置client用戶(hù)名
->密碼為secrets file中配置的對(duì)應(yīng)賬號(hào)中的密碼
->如果用密碼驗(yàn)證的話逼争,會(huì)提示輸入密碼劝赔,密碼正確就會(huì)傳輸
若只開(kāi)放拉取,rsyncd.conf中[module_name]下需配置read only = true
2. 遠(yuǎn)端推送
rsync -av file [auth users]/[root]@HOST::[module_name]
操作同上
若只開(kāi)放寫(xiě)入杂伟,rsyncd.conf中[module_name]下需配置write only = true
3. 指定ssh傳輸
rsync -av -e 'ssh -p [port]' file [auth users]/[ssh_name]@HOST::[module_name]
其他
參考文檔