27Jun
Rsync je jedním z nejužitečnějších nástrojů pro správce serveru, ale ve výchozím nastavení synchronizuje všechno , což může být nepříjemné, pokud vaše aplikace vytvoří spoustu dočasných souborů.Zde je návod, jak vyloučit soubory při použití rsync.
Vyloučení ze seznamu v souboru
Toto je ideální metoda pro vyloučení souborů a složek, protože v případě potřeby můžete vždy upravit seznam a vyladit věci. Zde je syntaxe:
rsync --exclude-from = /path/to/ vyřazovací soubor /path/to/ zdroj /path/to/ destSložitá věc s rsync spočívá v tom, že potřebujete použít relativní cestu, když se snažíte vyloučit věci, protože když se pokoušíodpovídat výjimkám, že nepoužije první část cesty pro zápas. .. je to divné.
Řekněme například, že se snažíte zálohovat /data/web/ a poslat jej na jiný server, takže použijete příkaz jako rsync -a /data/web/ user @ server: /backups/data/web/, aby se to stalo. .. ale opravdu byste chtěli přeskočit synchronizaci /data/web/cache/složky. Při spuštění rsync zkontrolujete seznam výjimek pro každou položku, kterou synchronizuje, nezkontroluje /data/web/cache/, protože původní příkaz rsync je umístěn ve složce /data/web/.Stačí se podívat na seznam "cache /".Takže budete muset dát "cache" do seznamu, ne úplnou cestu. Příklad:
rsync -a --exclude-from = /data/ vyloučení /data/web/ /backups/Nyní k vyloučení /data/web/ mezipaměti a /data/web/ temp z rsync pomocí tohoto příkazu bychom odstranili část /data/web/ cesty a soubor /data/ vyloučení by obsahoval jednoduše:
cache * temp *Berete na vědomí, že jsem přidal * do cesty, aby se ujistil, že odpovídá cokoliv, co začíná "cache" na začátku. Můžete použít tento hvězdný vzorec pro užitečnější účely, pokud chcete - řekněme, že chcete vyloučit synchronizaci všech souborů. txt. Spusťte vzorek s hvězdou, abyste se ujistili, že se vždy shoduje, a přidejte toto:
*. txtTímto způsobem zajistíte přeskočení těchto typů souborů během synchronizace. Je to dost jednoduché.
Vyloučení jediné položky
Tato technika je mnohem méně užitečná, ale můžete ji použít, pokud potřebujete. Pokud nastavujete skript pro použití rsync, který obvykle bývá, měli byste místo toho vyloučit ze seznamu souborů další minutu, abyste usnadnili budoucí údržbu. Syntaxe je velmi podobná:
rsync --exclude = relativní /path/to/ vyloučení / zdroj / destStejná relativní cesta by měla platit zde jako výše.