If-Koubou

Как да изключите файлове от Rsync

Как да изключите файлове от Rsync (Как да)

Rsync е една от най-полезните помощни програми за сървърния администратор, но се синхронизиравсичко по подразбиране, което може да е досадно, ако вашето приложение създава много временни файлове. Ето как да изключите файловете, когато използвате rsync.

Изключване от списък в файл

Това е идеалният метод за изключване на файлове и папки, тъй като винаги можете да редактирате списъка и да промените нещата, ако е необходимо. Ето синтаксиса:

Rsync --exclude-от = / път / до / изключване-файл / път / към / източник / път / към / dest

Трудното нещо с rsync е, че трябва да използвате относителна пътека, когато се опитвате да изключите нещата, защото когато се опитва да съвпадне с изключенията, няма да използва първата част от пътя за мача ... това е странно.

Кажете например, че се опитвате да архивирате / данни / уеб / и да го изпратите на друг сървър, така че да използвате команда като rsync -a / data / web / user @ server: / backups / data / web / се случи ... но наистина бихте искали да пропуснете синхронизирането на папката / data / web / cache /. Когато rsync отива да провери списъка ви за изключване за всеки елемент, който синхронизира, той няма да провери / data / web / cache /, тъй като първоначалната ви команда rsync е базирана в папката / data / web /. Тя просто ще провери "кеш /" в списъка. Така че ще трябва да поставите "кеш" в списъка, а не пълен път. Пример:

rsync -a - изключване-от = / data / изключения / данни / уеб / / архиви /

Сега, за да изключим / data / web / cache и / data / web / temp от rsync, използвайки тази команда, ще премахнем / data / web / частта от пътя и файла /

кеш * темп *

Ще забележите, че съм добавил * в пътя, за да се уверите, че той съвпада с всичко, което започва с "кеш" в началото. Можете да използвате този модел звезда за по-полезни причини, ако искате - да речем, че искате да изключите всички файлове .txt от синхронизиране. Ще стартирате шаблона със звездата, за да сте сигурни, че винаги съответства и добавете следното:

*.текст

Това ще гарантира, че тези типове файлове се пропускат по време на синхронизиране. Това е доста просто отвъд това.

Изключване на единична позиция

Тази техника е много по-малко полезна, но можете да я използвате в движение, ако имате нужда. Ако настройвате скрипт за използване на rsync, който обикновено сте, трябва да вземете допълнителната минута, за да изключите от списъка с файлове, за да улесните бъдещата поддръжка. Синтаксисът е много подобен:

rsync --exclude = относителен / път / към / изключване / източник / dest

Същият относителен път трябва да се прилага тук, както по-горе.