Я работаю над сценарием резервного копирования, но у меня возникли проблемы с моим сценарием. Вы можете мне помочь?
INCLUDE="/data/scripts/include.txt"
EXCLUDE="/data/scripts/exclude.txt"
DST="/backupdir"
rsync \
--archive \
--recursive \
--include-from $INCLUDE \
--exclude-from $EXCLUDE \
--hard-links \
--perms \
--executability \
--owner \
--group \
--human-readable \
--verbose \
--progress \
--delete-before \
--stats \
--timeout=300 \
-e "ssh -i $SSHKEY" $USER@$IP:$DST
#include
/root
/data
/etc/httpd
/data/lost+found
#exclude
/data/www/html/nextcloud/public_html/data/index.html
/data/www/html/nextcloud/public_html/data/nextcloud.log
/data/www/html/nextcloud/public_html/data/updater.log
/data/www/html/nextcloud/public_html/data/updater-*
Мой вопрос в том, как мне сообщить rsync в rsync обо всем, что находится в включаемом файле, исключить все, что находится в исключенном файле, без указания ему исходного пути?
В руководстве говорится, что у вас должен быть исходный каталог.
Вы должны использовать список в своем включаемом файле как список исходных каталогов для циклического прохождения и rsync из:
for dir in /root /data /etc/httpd
do
rsync OPTIONS $dir DEST
done
Или, ты можешь сделать /
ваш исходный каталог и есть что-то вроде /*
в вашем шаблоне исключения.