rsync (同步資料,支援增量備份)
使用方法:
rsync -av 192.168.31.182:/tmp/1.txt /tmp/ (将伺服器192.168.31.182中tmp檔案夾下的1.txt檔案拷貝到本機的tmp目錄下)
rsync -av /tmp/1.txt 192.168.31.182:/tmp/ (将本機的tmp目錄下的1.txt檔案拷貝到伺服器192.168.31.182中tmp檔案夾下)
rsync -av 192.168.31.182::longfei/123/1.txt /tmp/ (demo從伺服器複制到本地)
rsync -av /tmp/1.txt 192.168.31.182::longfei/123/ (demo從本地複制到伺服器)
選項:
-a == -rlptgoD
-v == 可視化
--delete == a-->b删除同步過程中a沒有b有的檔案
--exclude=PATTERN == 同步過程中不同步某些檔案夾
-P == 能夠檢視同步進度,類似于-v
-u == a-->b避免覆寫b機器上已經修改過的檔案内容
-avL (可以将有軟連結的檔案直接同步拷貝)
rsync -av 111/ /tmp/123/ (将111目錄下的檔案拷貝到/tmp/123/下)
rsync -avL 111/ /tmp/123/ (将有軟連結的檔案的連結的檔案直接覆寫拷貝到/tmp/123/下對應的檔案)
rsync -avL --delete 111/ /tmp/123/ (将有軟連結的檔案的連結的檔案直接覆寫拷貝到/tmp/123/下對應的檔案,且将原檔案夾内删除的檔案,在目标檔案夾内也删除)
rsync -avLu 111/ /tmp/123/ (将有軟連結的檔案的連結的檔案直接覆寫拷貝到/tmp/123/下對應的檔案,且不會将目标檔案夾内已經修改的檔案覆寫)
rsync -avLu --exclude="*.txt" 111/ /tmp/123/ (将有軟連結的檔案的連結的檔案直接覆寫拷貝到/tmp/123/下對應的檔案,且不會将目标檔案夾内已經修改的檔案覆寫,但是不拷貝原檔案夾内的所有.txt結尾的檔案)
rsync -avLuPz --exclude="*.txt" 111/ /tmp/123/ (将有軟連結的檔案的連結的檔案直接覆寫拷貝到/tmp/123/下對應的檔案,且不會将目标檔案夾内已經修改的檔案覆寫,但是不拷貝原檔案夾内的所有.txt結尾的檔案,并顯示目前拷貝進度,并将拷貝内容壓縮後傳輸)
rsync -avPz -e "ssh -p 10022" 192.168.31.182/tmp/111/ ./111/ (指定端口進行拷貝傳輸)
rsync -avL --delete --exclude [email protected]::mokuaiming/test ./ --password-file=/home/admin/rsyncd.passwd (rsync參考詞條,較全)
rsync背景服務方式
配置檔案:
/etc/rsyncd.conf (配置檔案,可自定義,現在為自動加載)
配置檔案内容:
prot=8730
log file=/var/log/rsync.log
pid file=/var/run/rsync.pid
[mokuaiming]
path=/tmp/rsync #目錄要真實存在
use chroot=yes #是否把登入使用者限定在目前目錄下,對軟連結有限制,如果有軟連結檔案,需要改為no
max connections=4
read only=no #登入到該目錄下,且限定目錄檔案是否隻讀,如果需要将伺服器檔案下載下傳下來,需要改為no
list=yes #能否使用rsync --prot 8730 192.168.31.182 指令把子產品名字列出
uid=root
gid=root
auth users=sponge
secret file=/etc/rs.passwd #密碼權限需要可讀
hosts allow=192.168.31.182 192.168.31.18 #允許哪些ip能夠連接配接
[mokuaiming2] #不需要使用者認證都可以拷貝,且任何機器都能連接配接
path=/tmp/rsync123 #目錄要真實存在
use chroot=yes #是否把登入使用者限定在目錄下
read only=no #登入到該目錄下,且隻讀
list=yes #是否把子產品名字列出
rsync --demon (啟動rsync的demon程序,更改配置檔案後不需要重新開機程序,直接生效)
rsync -avPz --prot 8730 192.168.31.182::mokuaiming/tmp/rsync/1.txt ./ (同步檔案格式)
rsync -avPz --prot 8730 [email protected]::mokuaiming2/tmp/rsync123/1.txt ./ (同步檔案格式)
rsync -avPz --prot 8730 --password-file=/tmp/rsync.passwd.txt [email protected]::mokuaiming2/tmp/rsync123/1.txt ./ (不需要輸入密碼,直接能夠進行傳輸,但是密碼檔案中需要寫入密碼,且一個檔案隻能存一個密碼)
diff (對比兩個檔案的差異)
diff /tmp/1.txt /etc/init.d (對比兩個檔案異同)
本文轉自 粗糧面包 51CTO部落格,原文連結:http://blog.51cto.com/culiangmianbao/2052325,如需轉載請自行聯系原作者