Cum să excludeți fișierele din Rsync
Rsync este una dintre cele mai utile utilitare pentru un administrator de server, dar se sincronizează Tot în mod implicit, ceea ce poate fi enervant dacă aplicația dvs. creează o mulțime de fișiere temporare. Iată cum puteți exclude fișierele când utilizați rsync.
Excluderea dintr-o listă într-un fișier
Aceasta este metoda ideală pentru excluderea fișierelor și a dosarelor, deoarece puteți edita întotdeauna lista și puteți modifica dacă este necesar. Iată sintaxa:
rsync --exclude de la-= / calea / spre / excludere fișier / cale / către / sursă / cale / către / dest
Lucrul complicat cu rsync este că trebuie să folosiți o cale relativă atunci când încercați să excludeți lucrurile, deoarece atunci când încearcă să se potrivească cu excluderile nu va folosi prima parte a căii pentru meci ... este ciudat.
Spuneți, de exemplu, că încercați să faceți backup / data / web / și trimiteți-l la un alt server, deci utilizați o comandă precum rsync -a / data / web / user @ server: / backups / data / web / se întâmplă ... dar doriți să săriți sincronizarea directorului / data / web / cache /. Când rsync merge pentru a verifica lista dvs. de excludere pentru fiecare element pe care îl sincronizează, nu va verifica / data / web / cache / deoarece comanda inițială rsync se bazează în directorul / data / web /. Va verifica doar "cache /" în listă. Deci, va trebui să puneți "cache" în listă, nu pe calea completă. Exemplu:
rsync -a - exclude-din = / data / excluderi / date / web / / backup /
Acum, pentru a exclude / data / web / cache și / data / web / temp din rsync folosind această comandă, vom elimina / data / web / porțiunea de cale, iar fișierul /
cache * temp *
Veți observa că am adăugat * în cale, pentru a vă asigura că se potrivește cu tot ce începe cu "cache" la început. Puteți folosi acest tip de stea pentru motive mai utile dacă doriți - spuneți că doriți să excludeți ca fișierele .txt să fie sincronizate. Ați începe modelul cu steaua pentru a vă asigura că se potrivește întotdeauna și adăugați aceasta:
*.txt
Acest lucru ar asigura faptul că acele tipuri de fișiere sunt sărite în timpul unei sincronizări. Este destul de simplu dincolo de asta.
Excluderea unui element unic
Această tehnică este mult mai puțin utilă, dar o puteți folosi în zbor dacă doriți. Dacă setați un script care să utilizeze rsync, de obicei, ar trebui să luați minutul suplimentar pentru a exclude dintr-o listă de fișiere pentru a ușura întreținerea ulterioară. Sintaxa este foarte asemănătoare:
rsync - exclude = relativă / cale / către / excludere / sursă / dest
Aceeași cale relativă ar trebui să se aplice aici ca mai sus.