Jak vyloučit soubory z Rsync

Obsah:

Video: Jak vyloučit soubory z Rsync

Video: Jak vyloučit soubory z Rsync
Video: How to Install Chrome OS Flex: Make an Old PC New Again 2024, Březen
Jak vyloučit soubory z Rsync
Jak vyloučit soubory z Rsync
Anonim
Image
Image

Rsync je jeden z nejužitečnějších nástrojů pro správce serveru, ale synchronizuje sevšechno ve výchozím nastavení, 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

Jedná se o ideální metodu pro vyloučení souborů a složek, protože můžete vždy upravit seznam a vyladit věci v případě potřeby. Zde je syntaxe:

rsync - -exclude-from=/path/to/exclusion-file /path/to/source /path/to/dest

Složitá věc s rsync je, že musíte použít relativní cestu, když se snažíte vyloučit věci, protože když se pokusí vyloučit výjimky, nebude používat první část cesty pro zápas … je to divné.

Řekněme například, že se pokoušíte zálohovat / data / web / a odeslat jej na jiný server, takže použijte příkaz jako rsync -a / data / web / user @ server: / backups / data / web / Stalo se … ale opravdu byste chtěli přeskočit synchronizaci složky / data / web / cache /. 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/exclusions /data/web/ /backups/

Nyní s použitím tohoto příkazu vyloučíme / data / web / cache a / data / web / temp z rsync bychom odstranili / data / web / část cesty a soubor / data / vyloučení by obsahoval jednoduše:

cache* temp*

Poznamenáváte, ž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. Začněte vzor s hvězdou, abyste se ujistili, že se vždy shoduje, a přidejte toto:

*.txt

To by zajistilo, že tyto typy souborů budou při synchronizaci přeskočeny. Je to dost jednoduché.

Bez 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=relative/path/to/exclusion /source /dest

Stejná relativní cesta by měla platit zde jako výše.

Doporučuje: