Můžete mít několik možností vyloučení pro tar so
$ tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .
atd. bude fungovat. Ujistěte se vložte --exclude
před zdrojové a cílové položky.
stará otázka s mnoha odpověďmi, ale zjistil jsem, že žádná pro mě není dost jasná, takže bych rád přidal svůj pokus.
pokud máte následující strukturu
/home/ftp/mysite/
s následujícími soubory/složkami
/home/ftp/mysite/file1
/home/ftp/mysite/file2
/home/ftp/mysite/file3
/home/ftp/mysite/folder1
/home/ftp/mysite/folder2
/home/ftp/mysite/folder3
takže chcete vytvořit soubor tar, který bude obsahovat vše v /home/ftp/mysite (pro přesunutí webu na nový server), ale file3
je jen nevyžádaná pošta a vše v folder3
není také potřeba, takže tyto dva přeskočíme.
používáme formát
tar -czvf <name of tar file> <what to tar> <any excludes>
kde c =create, z =zip a v =verbose (můžete vidět soubory tak, jak jsou zadány, což je užitečné, abyste se ujistili, že se nepřidávají žádné soubory, které vyloučíte). a f=soubor.
takže můj příkaz by vypadal takto
cd /home/ftp/
tar -czvf mysite.tar.gz mysite --exclude='file3' --exclude='folder3'
všimněte si, že vyloučené soubory/složky jsou relativně ke kořenovému adresáři vašeho taru (zkusil jsem zde úplnou cestu vzhledem k /, ale nemohu to udělat).
doufám, že to někomu pomůže (a mně, až to budu příště googlit)
Možné možnosti vyloučení souborů/adresářů ze zálohy pomocí tar:
Vyloučit soubory používající více vzorů
tar -czf backup.tar.gz --exclude=PATTERN1 --exclude=PATTERN2 ... /path/to/backup
Vyloučit soubory pomocí souboru vyloučení vyplněného seznamem vzorů
tar -czf backup.tar.gz -X /path/to/exclude.txt /path/to/backup
Vylučte soubory pomocí značek umístěním souboru značek do libovolného adresáře, který by měl být přeskočen
tar -czf backup.tar.gz --exclude-tag-all=exclude.tag /path/to/backup
Adresáře můžete vyloučit pomocí --exclude
pro dehet.
Pokud chcete archivovat vše kromě /usr
můžete použít:
tar -zcvf /all.tgz / --exclude=/usr
Ve vašem případě možná něco jako
tar -zcvf archive.tgz arc_dir --exclude=dir/ignore_this_dir