rsync 遠程同步node
格式:服務器
rsync [OPTION]... SRC DEST ssh
rsync [OPTION]... SRC [USER@]HOST:DEST //用戶名默認爲當前終端的用戶ide
rsync [OPTION]... [USER@]HOST:SRC DEST spa
rsync [OPTION]... [USER@]HOST::SRC DEST orm
rsync [OPTION]... SRC [USER@]HOST::DEST遞歸
-v:顯示詳細信息進程
-a:以遞歸方式傳輸文件,並保持全部屬性;等同於-rlpogtD,-a選項後可跟--no-OPTION參數,用於減去某個選項(一個),如-a --no-lci
-r:遞歸模式,即傳輸時保持目錄結構文檔
-l:傳輸軟連接文件,默認不傳輸
-L:當SRC包含軟連接文件時,傳輸軟連接文件所指向目標文件
-H:保留硬連接,默認使用不一樣的inode存放
-p:保持文件權限
-o:保持文件所屬者信息
-g:保持文件所屬組信息
-t:保持文件時間信息
-D:保持設備文件信息
--delete:刪除DST中SRC裏沒有的文件
--exclude=PATTERN:傳輸時排除指定文件,可以使用通配符
-P|--progress:顯示傳輸進度
-u:當DST中的文件比SRC中的文件還新時,不進行覆蓋
-z:壓縮傳輸
-e "ssh -p xxx":使用指定端口,或"--rsh=ssh -p xxx"
-R:建立級聯目錄
--files-from=file-path:根據指定的文件列表文檔進行同步
--include=PATTERN --exclude="*": 只同步指定類型的文件
diff file1 file2:對比2個文件的差別
同步目錄下的文件時,請必定記得加/
rsync同步之ssh隧道方式
yum install -y openssh-clients //須要安裝openssh-clients包
若是要實現自動化同步(無須輸入密碼), 就得使用密鑰認證,在建立密鑰時,不設置密鑰密碼。
這種方式就是使用ssh方式鏈接到遠端主機,而後啓動rsync進程,以使雙方可以進行rsync同步,同步完成後關閉rsync進程。
rsync後臺服務模式
--port:指定鏈接的服務器端口,默認873
rsync HOST:: //列出list=yes的模塊名,不須要用戶認證
rsync --daemon --confg=/etc/rsyncd.conf //啓動rsync守護進程,並指定配置文件
若是要實現自動化同步(無須輸入密碼),有2種方法,在rsync配置文件中不指定auth users和secrets file,或者使用--password-file=path參數;配置文件更改後無須重啓rsync服務。
注:rsync服務端的認證文件和客戶端的密碼文件的權限要設置爲600.
這種方式就是啓用rsync的守護進程(daemon),打開一個端口(默認873)並偵聽它,等待rsync客戶端發起鏈接請求。