rsync遠端資源同步
阿新 • • 發佈:2018-11-07
rsync是可以實現增量備份的工具,也可實現scp的遠端拷貝、cp的本地拷貝等功能;
(1)rsync命令常用引數:
-v, --verbose 詳細模式輸出 -q, --quiet 精簡輸出模式 -c, --checksum 開啟校驗開關,強制對檔案傳輸進行校驗 -a, --archive 歸檔模式,表示以遞迴方式傳輸檔案,並保持所有檔案屬性,等於-rlptgoD -r, --recursive 對子目錄以遞迴模式處理 -b, --backup 建立備份,也就是對於目的已經存在有同樣的檔名時,將老的檔案重新命名為~filename。可以使用--suffix選項來指定不同的備份檔案字首。 -suffix=SUFFIX 定義備份檔案字首 -u, --update 只同步已經更新的檔案,避免沒有更新的檔案被重複更新一次 -l, --links 保留軟鏈結 -p, --perms 保持檔案許可權 -o, --owner 保持檔案屬主資訊 -g, --group 保持檔案屬組資訊 -t, --times 保持檔案時間資訊 -e, --rsh=COMMAND 指定使用rsh、ssh方式進行資料同步 --delete 刪除那些DST中SRC沒有的檔案 --delete-excluded 同樣刪除接收端那些被該選項指定排除的檔案 --delete-after 傳輸結束以後再刪除 --ignore-errors 及時出現IO錯誤也進行刪除 --force 強制刪除目錄,即使不為空 --timeout=TIME IP超時時間,單位為秒 --progress 顯示備份過程 -z, --compress 對備份的檔案在傳輸時進行壓縮處理 --exclude=PATTERN 指定排除不需要傳輸的檔案模式 --include=PATTERN 指定不排除而需要傳輸的檔案模式 --exclude-from=FILE 排除FILE中指定模式的檔案 --include-from=FILE 不排除FILE指定模式匹配的檔案
(2)基本語法:
拉取資料:rsync [option...] [[email protected]]host:src... [dest]
推送資料:rsync [option...] src... [[email protected]]host:dest
(3)舉例說明使用場景:
1、本地拷貝目錄,將/home/www/test1/ 拷貝到/home/www/test2/
rsync -auv /home/www/test1 /home/www/test2
2、將本地目錄拷貝到遠端伺服器
rsync -auv --progress --delete /home/www/test1 [email protected]:/home/www/test2
如果不想顯示具體傳輸過程可以去掉--progress引數,如果需要壓縮傳輸,可以加上-z 引數
--delete 引數,這樣當本地刪除檔案時,遠端也會自動刪除,保持完整一致;
3、將遠端目錄拷貝到伺服器目錄
rsync -avu --progress --delete [email protected]:/home/www/test1/ /home/www/test2/