If-Koubou

Cum să excludeți fișierele din Rsync

Cum să excludeți fișierele din Rsync (Cum să)

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 să excludem 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 oricând să editați lista și să modificați dacă este necesar. Iată sintaxa:

rsync --exclude-= de la / calea / spre / excludere fișier / cale / spre / 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ă ca 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ă, acesta 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-de la = / 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 căii și 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 utiliza acest tip de stea pentru motive mai utile dacă doriți - spuneți că doriți să excludeți sincronizarea tuturor fișierelor .txt. Ați începe modelul cu steaua pentru a vă asigura că se potrivește întotdeauna și adăugați aceasta:

*.txt

Acest lucru va asigura că acele tipuri de fișiere sunt ignorate în timpul sincronizării. E 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ă aveți nevoie. Dacă configurați un script pentru a utiliza 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ă / destinație

Aceeași cale relativă ar trebui să se aplice aici ca mai sus.