Назад | Перейти на главную страницу

Что именно --delete-excluded сделает для rsync?

Я с большим удовольствием использую rsync для резервного копирования своих серверов, хотя у меня есть вопрос о --delete-excluded параметр.

/usr/bin/rsync -a --delete --numeric-ids --relative --delete-excluded     --rsh=/usr/bin/ssh root@server01:/etc /.snapshot/hourly.0/server01

Из man rsync:

 --delete-excluded       also delete excluded files from dest dirs

Для меня, не носителя английского языка, это означает, что rsync удалит исключенные каталоги из фактического целевого каталога на удаленном сервере, поэтому, если у меня есть /home/backup и /home/settings в моих исключительных папках эти папки на самом деле будут удален с удаленного сервера,.

Из нескольких других ресурсов кажется, что он удалит файлы из локальной резервной папки, чтобы сэкономить место. Например, вы можете создать небольшие резервные копии на самом сервере и исключить эти данные, чтобы не тратить впустую место для хранения.

Для меня жизненно важно, чтобы rsync выполнял свою работу только в одном направлении, поскольку люди говорят, что он предназначен для работы. Я не хочу рисковать, имея программное обеспечение, которое удаляет файлы / каталоги на удаленном сервере.

Ваша интерпретация верна. Если вы исключили файлы или каталоги из передачи, --delete-excluded удалит их со стороны назначения (это не обязательно должен быть «удаленный сервер», вы можете использовать rsync для копирования с сервера на локальный компьютер), если он там их найдет. Например, если вы используете --exclude=*.o --delete-excluded, то, если rsync найдет какие-либо файлы, заканчивающиеся на .o на стороне назначения, он удалит их независимо от того, существуют они в исходном каталоге или нет.