Kako izključiti datoteke iz Rsync
Rsync je eden najbolj uporabnih pripomočkov za skrbnika strežnika, vendar se sinhronizira vse privzeto, kar je lahko nadležno, če vaša aplikacija ustvari veliko začasnih datotek. Če želite uporabiti rsync, lahko izključite datoteke.
Izključitev iz seznama v datoteki
To je idealna metoda za izključitev datotek in map, saj lahko seznam vedno urejate in po potrebi prilagodite. Tu je sintaksa:
rsync --izključi-iz = / pot / v / izključitev-datoteko / pot / do / vir / pot / do / dest
Zelo moteča stvar pri rsync je, da morate uporabiti relativno pot, ko skušate izključiti stvari, ker ko se poskuša ujemati z izključitvami, ne bo uporabil prvega dela poti za ujemanje… to je čudno.
Recimo, na primer, da skušate varnostno kopirati / data / web / in ga poslati drugemu strežniku, zato uporabite ukaz, kot je rsync -a / data / web / user @ server: / backups / data / web / se zgodi… ampak res želite preskočiti sinhronizacijo mape / data / web / cache /. Ko rsync preveri vaš seznam izključitev za vsak element, ki ga sinhronizira, ne bo preveril / data / web / cache /, ker je prvotni ukaz rsync zasnovan v mapi / data / web /. To bo samo preverilo "cache /" proti seznamu. Torej boste morali na seznam dodati “cache”, ne pa celotne poti. Primer:
rsync -a --exclude-from = / podatki / izključitve / data / web / / varnostne kopije /
Zdaj, da s tem ukazom izločimo / data / web / cache in / data / web / temp iz rsync, bi odstranili / data / web / del poti in datoteka / data / exclusion bi preprosto vsebovala to:
predpomnilnik * temp *
Opazili boste, da sem dodal * v pot, da se prepričam, da se na začetku ujema s čimerkoli, ki se začne z “cache”. Ta vzorec zvezdic lahko uporabite za bolj uporabne razloge, če želite - recimo, da želite izključiti vse datoteke .txt iz sinhronizacije. Vzorec začnete s zvezdico, da se prepričate, ali se vedno ujema, in dodajte to:
* .txt
To bi zagotovilo, da se te vrste datotek med sinhronizacijo preskoči. Precej preprosto je.
Brez ene postavke
Ta tehnika je veliko manj uporabna, vendar jo lahko uporabite v letenju, če jo potrebujete. Če nastavljate skript za uporabo rsync, ki ga običajno uporabljate, vzemite še dodatno minuto, da izključite s seznama datotek, da bi v prihodnje olajšali vzdrževanje. Skladnja je zelo podobna:
rsync --exclude = relativna / pot / do / izključitev / vir / dest
Ista relativna pot naj velja tukaj, kot zgoraj.