Ako vylúčiť súbory z Rsync
Rsync je jedným z najužitočnejších nástrojov pre správcu servera, ale synchronizuje sa všetko čo môže byť nepríjemné, ak vaša aplikácia vytvára veľa dočasných súborov. Tu je postup, ako vylúčiť súbory pri použití rsync.
Vylúčenie zo zoznamu v súbore
Ide o ideálnu metódu na vylúčenie súborov a priečinkov, pretože v prípade potreby môžete zoznam upraviť a vylepšiť. Tu je syntax:
rsync --vylúči-from = / / k / vylúčenie spisu cesta / cesta / do / zdroj / cesta / do / dest
Zložitá vec s rsync je, že musíte použiť relatívnu cestu, keď sa pokúšate vylúčiť veci, pretože keď sa pokúsi vyrovnať s vylúčením, nebude používať prvú časť cesty pre zápas ... je to divné.
Povedzme napríklad, že sa pokúšate zálohovať / dáta / web / a posielať ho na iný server, takže môžete použiť príkaz ako rsync -a / data / web / user @ server: / backups / data / web / stalo sa ... ale naozaj by ste chceli preskočiť synchronizáciu priečinka / data / web / cache /. Keď rsync prejde kontrolou vášho zoznamu vylúčení pre každú položku, ktorú synchronizuje, nebude kontrolovať / data / web / cache /, pretože pôvodný príkaz rsync je založený na priečinku / data / web /. Bude len skontrolovať "cache /" proti zoznamu. Takže budete musieť vložiť "cache" do zoznamu, nie úplnú cestu. Príklad:
rsync -a --exclude-from = / data / vylúčenia / dáta / web / / zálohy /
Teraz s použitím tohto príkazu vylúčime / data / web / cache a / data / web / temp z rsync, odstránili by sme / data / web / časť cesty a súbor / data / exemptions by jednoducho obsahoval toto:
cache * temp *
Všimnite si, že som pridal * do cesty, aby sa ubezpečil, že to zodpovedá všetkým, čo začína "cache" na začiatku. Môžete použiť tento hviezdny vzorec z viacerých užitočných dôvodov, ak ste chceli - povedzme, že chcete vylúčiť synchronizáciu všetkých súborov .txt. Začali ste vzor s hviezdou, aby ste sa uistili, že sa vždy zhoduje a pridajte toto:
*.TXT
To by zabezpečilo, že tieto typy súborov budú počas synchronizácie preskočené. Je to dosť jednoduché.
Bez jednej položky
Táto technika je oveľa menej užitočná, ale ak ju potrebujete, môžete ju používať aj v lete. Ak nastavujete skript na používanie rsync, ktorý ste zvyčajne, mali by ste namiesto toho minúť ďalšiu minútu, aby ste vylúčili zo zoznamu súborov, aby ste uľahčili budúcu údržbu. Syntax je veľmi podobný:
rsync --exclude = relatívna / cesta / do / vylúčenie / zdroj / dest
Rovnaká relatívna cesta by mala platiť tu ako vyššie.