PDA

Bekijk Volledige Versie : Rsync met --delete optie, maar moet niet alles deleten.... kan dat?



systemdeveloper
26/09/12, 14:01
Ik ben hier even aan het prutsen met een rsync waarbij ik het volgende heb:

server a: website die gebruik maakt van een nfs mount in de public_html (da bakkie)
server b: moet de boel gewoon mirroren.

Als ik nu een rsync start dan wil ik dat een aantal dingen niet gesynced worden (met name de inhoud onder de symlinks naar de nfs share en een file cache directory) dus daar gebruik ik '-l --safe-links' en een exclude van de directory voor bij de rsync.
Ik wil wel dat verwijderde bestanden ook op server b deleted worden dus daar heb je de --delete optie voor.

Maar nu wil ik dat op server b de symlinks naar de nfs share en de cache dir wel blijven staan (die maak ik eenmalig aan), maar dat gaat uiteraard niet omdat ze niet gesynced worden en wat er niet is, wordt deleted.

Heeft iemand toevallig een handige oplossing hiervoor?

t.bloo
26/09/12, 14:05
Als je een filterfile gebruikt wordt er alleen deleted als het niet excluded is.

systemdeveloper
26/09/12, 14:08
Als je een filterfile gebruikt wordt er alleen deleted als het niet excluded is.

Maar dan moet ik alle soorten bestanden die wel gesynced moeten worden 'includen' dus?

Edit: Ach wat dom.... ik gebruik 2 rsyncs en exclude de zooi alleen op de eerste :S

Thanks!

SOLVED!

BReady
26/09/12, 22:02
@systemdeveloper zou je misschien je rsync cmd line kunnen posten ;-)?

systemdeveloper
26/09/12, 22:35
@systemdeveloper zou je misschien je rsync cmd line kunnen posten ;-)?

Het is maar een standaard rsync regeltje hoor:

/usr/bin/rsync --bwlimit=5000 -al --safe-links --delete --relative --exclude 'cache/' --exclude 'symlink1' --exclude 'symlink2' --rsh="/usr/bin/ssh -p wzyz -o Compression=no" root@host1:/dir1/ /dir2/

Ik gebruik er echter 2 omdat de data op een ander bak bewerkt moet worden maar bij de 2de had ik geen exclude staan. De eerst laat de symlinks en cache dus lekker met rust maar de 2de verwijderde ze op het target om de 'berwerkingsbak' de symlinks en cache niet had.

BReady
26/09/12, 22:57
Bedankt :). Begrijp ik het nu goed, wil je two way synchronisatie met rsync doen?

systemdeveloper
26/09/12, 23:49
Nope, maar wel de data even op een andere server bewerken :)