rsync 如何略過目的端目錄不進行同步? - Linux

Table of Contents

各位先進 神人,大家好,

小弟目前在做rsync的設定時,碰上一個問題
想請教一下,我要如何使用rsync 進行同步時,忽略目的端的某個目錄或檔案呢?

比如說:

A來源端:/root/sky/

rsync 同步至

B目的端:/root/sky/

但是同步時,B目的端:'/root/sky/stor/logs/'
希望裡面的資料不要被同步,或者是刪除


我看網路上的文件加入--exclude-from可以忽略
所以我所下的語法是
rsync -avh --delete --exclude-from='/root/sky/stor/logs/' /root/sky/ /root/sky/

但是執行完後/root/sky/stor/logs/裡面的內容
還是會同步A來源端:/root/sky/stor/logs/
B目的端原有的資料也還是被刪除

想請教一下,不知道大家有沒有遇到這個問題過呢?
關於這部分該怎麼解..........

實在是不知道該怎麼辦,想說拜託大家幫幫忙。謝謝!

--

All Comments

Ingrid avatarIngrid2019-08-17
--delete 不要被刪除的 --exclude 要排除的 這樣才對吧?
Quintina avatarQuintina2019-08-22
嗯 我key錯 我的意思是要 XD
Quintina avatarQuintina2019-08-25
所以你要的是 不要動到 '/root/sky/stoy/logs/' 的意思?
Andy avatarAndy2019-08-27
--exclude={"path1","path2"} 排除的部份這樣試試?
Edwina avatarEdwina2019-08-31
- -delete- exclude ‘dir ‘ source/ destination/
Kelly avatarKelly2019-09-03
用手機打 符號有點不一樣 你再用這個語法看看
Linda avatarLinda2019-09-04
--exclude='/root/sky/stor/logs/**' 就不會同步也不會
被 --delete 刪掉
Ina avatarIna2019-09-08
然後 logs 資料夾一樣會建立
--exclude-from 要接寫好排除規則的排除規則檔
Adele avatarAdele2019-09-08
rsync -avh --delete --exclude "stor/logs/"
Callum avatarCallum2019-09-13
另外,為何目的地也是/root/sky?