【rsync】數(shù)據(jù)同步工具安裝及使用

安裝

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ù)
  1. motd file
    用于向連接端展示消息用,消息可以自己在指定文件中設(shè)置,默認(rèn)空,進(jìn)程命令:
--dparam=motdfile=motd file
  1. pid file
    用于守護(hù)進(jìn)程寫(xiě)入進(jìn)程id用,必填項(xiàng),進(jìn)程命令:
--dparam-pidfile=pid file
  1. port
    指定rsync運(yùn)行的端口號(hào),默認(rèn)873,命令:
--port=873
  1. address
    用于設(shè)置rsync監(jiān)聽(tīng)的ip地址,命令:
--address=IP
  1. socket options
    用于設(shè)置socket套接字配置,具體查看socket配置項(xiàng)配置,命令:
--sockopts=opts
  • 模塊配置參數(shù)(常用)
  1. comment
    連接端接入該模塊時(shí)展示于模塊名稱旁,默認(rèn)無(wú)
  2. path
    指定該模塊允許訪問(wèn)的文件路徑
  3. use chroot
    當(dāng)該參數(shù)為true時(shí),rsync默認(rèn)會(huì)吧path作為該模塊訪問(wèn)的根路徑,可選值:true/false
  4. daemon chroot
    當(dāng)改參數(shù)為true時(shí),rsync會(huì)將守護(hù)進(jìn)程的chroot路徑指定為該模塊下的path,默認(rèn)不設(shè)置,可選值:true/false
  5. 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)提高安全性??蛇x值:true/false
  6. max connections
    指定該模塊最大并發(fā)連接數(shù),默認(rèn)無(wú)限制(-1/0)
  7. log file
    用于指定寫(xiě)入日志的文件路徑,必填項(xiàng)
  8. lock file
    該文件用于限制最大并發(fā)數(shù),必填項(xiàng)
  9. read only
    開(kāi)啟/關(guān)閉連接端讀權(quán)限
  10. write only
    開(kāi)啟/關(guān)閉連接端寫(xiě)權(quán)限
  11. list
    文檔看的不大懂
  12. uid
    指定rsync運(yùn)行進(jìn)程時(shí)哪個(gè)用戶/文件是可用的,通常與gid配合使用
  13. gid
    指定一個(gè)組別
  14. auth users
    指定該模塊可訪問(wèn)的用戶,設(shè)置后連接端訪問(wèn)該模塊時(shí),需要輸入正確密碼才能訪問(wèn),多個(gè)可用空格或者逗號(hào)隔開(kāi),示例:
bob,jane // 指定兩個(gè)用戶可連接
bob:deny,jane // bob不可連接
bob, @guest jane:deny mark // guest組下的jane不可連接
bob:r,jane:w // bob只讀,jane只寫(xiě)
  1. secrets file
    指定用戶賬號(hào)密碼,當(dāng)auth users有設(shè)置的話,連接端連接時(shí)會(huì)去該文件中比對(duì)連接端的賬號(hào)密碼是否正確,格式:
username:password
  1. hosts allow
    設(shè)置允許訪問(wèn)的ip地址,默認(rèn)不設(shè)置,格式:
hosts allow = IP1[, IP2| iIP2...]
  1. hosts deny
    設(shè)置不允許訪問(wèn)的ip地址,默認(rèn)不設(shè)置
  2. ignore errors
    是否忽略文件傳輸中的錯(cuò)誤,可選值:yes/no
  3. 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用戶名
->密碼為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]

其他

參考文檔

  1. conf配置:https://www.samba.org/ftp/rsync/rsyncd.conf.5
  2. options配置:https://www.samba.org/ftp/rsync/rsync.1
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容