rsync只同步指定目錄的方法(已測(cè))
有時(shí)候我們需要同步一些目錄或者不同步一些目錄,一些文件,那么就可以參考下面的用法了
參數(shù)說(shuō)明
在做同步之前必須要知道的含義:
文件
--exclude='*' 排除所有文件,包括目錄,因?yàn)樵趌inux一切皆文件,代表排除所有
--exclude='*/' 排除所有目錄
--include='*/' 包含所有目錄
--include='*' 包含所有文件,包括目錄,因?yàn)樵趌inux一切皆文件,代表包含所有
上面這些寫(xiě)到命令里面,不如下面的通過(guò)文件配置更適合多個(gè)目錄與文件
目錄
--include-from 或 --files-from 只同步部分目錄
--exclude-from 不同步這些目錄
先創(chuàng)建一個(gè) tongbu.txt 支持文件與目錄,規(guī)則寫(xiě)法支持正則表達(dá)式
/a
/b
/index.htm
--files-from="tongbu.txt"
rsync同步指定目錄
rsync使用–include參數(shù)與–exclude參數(shù)來(lái)實(shí)現(xiàn)同步指定目錄,并且–exclude目錄放在后面。
例如:
linux上文件目錄
ls /usr/local/apache/htdocs/site
aa
bb
cc
dd
ee
..
zz
只想同步aa,bb,ee這三個(gè)目錄,其他的不同步。
實(shí)現(xiàn)代碼:
/usr/local/rsync/bin/rsync -azv --include "aa/" --include "bb/" --include "ee" --exclude "/*" --progress rsync://127.0.0.1/site /work/backup/htdocs_bak/site
說(shuō)明:
--include “aa/” --include “bb/” --include “ee” 包含了你要同步的目錄 –exclude包含了不同步的目錄所有用“/*”指定。
--exclude “/*” 除了–include同步的目錄外,排除其他目錄
rsync://127.0.0.1/site 為你rsync服務(wù)端要同步的目錄
/work/backup/htdocs_bak/site 為你客戶端的目錄
rsync同步指定正則文件(含子目錄)
前陣子做日志備份,把各個(gè)服務(wù)器上的日志同步到日志服務(wù)器上做備份,剛開(kāi)始比較暴力,把所有壓縮好的*gz文件全部傳送到日志備份服務(wù)器上。后來(lái),發(fā)現(xiàn)這種方式非常不好,一旦備份的目錄發(fā)生改變,服務(wù)器上又會(huì)把它所有的*gz文件全部再傳一遍,即浪費(fèi)時(shí)間又給服務(wù)i/o產(chǎn)生不必要的壓力,后來(lái)想只同步某天的*gz文件。
需求描述:
有一個(gè)類(lèi)似于這樣的目錄結(jié)構(gòu),子目錄的個(gè)數(shù)是不確定的
[root@IND_ tlbb]# tree . |-- ReadMe.txt | |-- Audit | `-- Money_2013-09-10.tgz |-- Audit_2013-09-10.tgz `-- Install
我想同步*.py結(jié)尾的東東
同步完成后
[root@IND_ tlbb]# tree . |-- Audit | `-- Money_2013-09-10.tgz `-- Audit_2013-09-10.tgz
方式1:(失?。?/p>
rsync -auvz –include=”*${YDate}*gz ” ./ 192.168.137.22::tlbb
結(jié)果:會(huì)把所有的文件都同步過(guò)去了,連Install都同步過(guò)去了
方式2:
rsync -aruvz –include=”*${YDate}*gz” –include=”*/” –exclude=”*” ./* 192.168.137.22::tlbb
結(jié)果:能把今天所有的gz文件都正常傳過(guò)去嘍,先允許所有的匹配的gz文件,再允許所有子目錄,最后拒絕所有其他的。
看到這里的朋友大家肯定發(fā)現(xiàn)了如果文件夾過(guò)多,肯定比較累,直接弄個(gè)txt文件將需要同步的與不需要同步都分別弄下就更好了,下面的方法在4.10版本中測(cè)試正常
實(shí)例篇
1、只同步制定目錄
如果當(dāng)前目錄文件夾有aa,bb,cc,dd等很多文件夾,我們只同步aa,bb,cc
先新建一個(gè)txt文件,例如 include.txt
/aa
/bb
/cc
只需要這么寫(xiě)就可以了--files-from="include.txt"
@echo off rsync -vzrtopg --progress --no-super --files-from="include.txt" --password-file=wtjb51.secrets /cygdrive/g/www/filesjb51net/web/ jb51@ip::filesjb51
2、不要同步哪些同步
新建一個(gè)exclude.txt文件,不同步dd文件夾
dd
--exclude-from=exclude.txt
使用rsync -aP --exclude=upload 只能排除upload文件/目錄。
如果要排除多個(gè)文件/目錄,怎么辦?
那只能建一個(gè)exclude.list,里面填寫(xiě)要排除的目錄(一行一個(gè)文件/目錄),然后rsync -aP --exclude-from=“exclude.list“
如:rsync -aP --exclude-from=/root/exclude.list 192.168.113.118::web_bak/www/ /data/server/www/ (從118同步數(shù)據(jù)到本機(jī))
@echo off rsync -vzrtopg --progress --no-super --password-file=wtjb51.secrets --exclude-from="nolitpic.txt" /cygdrive/e/webroot/wwwjb51net/do/uploads/litimg/ wtjb51@192.168.1.9::wwwjb51douploadlimit
nolitpic.txt
/08*
/09*
/1*
/20*
/21*
/22*
/2301*
/2302*
補(bǔ)充
--exclude=PATTERN exclude files matching PATTERN
--exclude-from=FILE read exclude patterns from FILE
--include=PATTERN don't exclude files matching PATTERN
--include-from=FILE read include patterns from FILE
補(bǔ)充:
rsync -vau --files-from="/root/syncto.txt" --exclude-from="/root/excludefile.txt" /data/web/ root@192.168.11.12:/data/web/用這種方式就可以了,其中syncto.txt寫(xiě)入要同步的文件,execludefile.txt存不需要同步的文件
相關(guān)文章
windows 權(quán)限之拒絕運(yùn)行應(yīng)用程序
windows 權(quán)限之拒絕運(yùn)行應(yīng)用程序的解決方法。2009-06-06django項(xiàng)目、vue項(xiàng)目部署云服務(wù)器的詳細(xì)過(guò)程
這篇文章主要介紹了django項(xiàng)目、vue項(xiàng)目部署云服務(wù)器的詳細(xì)過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07親自教你在netty中使用TCP協(xié)議請(qǐng)求DNS服務(wù)器的詳細(xì)過(guò)程
DNS的全稱domain name system,既然是一個(gè)系統(tǒng)就有客戶端和服務(wù)器之分,這篇文章主要介紹了在netty中使用TCP協(xié)議請(qǐng)求DNS服務(wù)器的全過(guò)程,需要的朋友可以參考下2022-07-07解析服務(wù)器常見(jiàn)錯(cuò)誤代碼500、501、502、503、504、505
這篇文章主要介紹了服務(wù)器常見(jiàn)錯(cuò)誤代碼500、501、502、503、504、505的相關(guān)知識(shí),需要的的朋友參考下吧2017-05-05完美解決IIS和APACHE的301重定向(帶參數(shù))
感覺(jué)BAIDU spider對(duì)404的重定向似乎無(wú)動(dòng)于衷,于是近日干脆對(duì)原失效的鏈接重新設(shè)置301重定向。2010-11-11用兩塊硬盤(pán)組建RAID0磁盤(pán)陣列簡(jiǎn)單教程(圖文詳解)
最近為了考慮數(shù)據(jù)安全特做了raid陣列,采用兩塊或多塊硬盤(pán)組建RAID磁盤(pán)陣列也成為了目前比較有性價(jià)比的硬盤(pán)性能提升解決方案2014-05-05Windows遠(yuǎn)程數(shù)據(jù)、文件同步工具cwRsync配置方法
這篇文章主要介紹了Windows遠(yuǎn)程數(shù)據(jù)、文件同步工具cwRsync配置方法,需要的朋友可以參考下2015-10-10