rsync опции и примеры

Опции и примеры
Для простоты понимания, операции синхронизации привожу сперва локально.
Быстрый способ синхронизировать два каталога, это использовать опцию -a:
rsync -a foobar_src/ foobar_dst/
В данном случае файлы и директории из источника скопируются в приемник, при этом, если там были файлы, то совпавшие по имени будут перезаписаны, а остальные не тронуты.

Опция -a задает архивный режим работы утилиты, и является эквивалентом набора опций:
-r, --recursive — рекурсивный режим;
-l, --links — пересоздание symlinks, это значит, что символические ссылки будут так же переноситься;
-p, --perms — перенос прав;
-t, --times — передача времени модификации и его обновление на удаленной системе. Этот ключ должен быть установлен для точной синхронизации;
-g, --group — установить группу конечного файла таким же, как и у исходного;
-o, --owner — установить владельца конечного файла таким же, как и у исходного;
-D, - same as --devices --specials — установить тип файла устройства и файла специального типа таким же, как у исходного.

В итоге получаем копию директории источника. Кстати, это можно использовать при переносе ОС на другой винчестер, подправив /etc/fstab, установив/переустановив grub на новом винте — получаем рабочую систему, но это уже другая тема.

Для вывода информации о работе утилиты, существует опция –v, –verbose. Чем больше опций -v, тем боле информативным будет вывод утилиты. Максимальная информативность достигается при четырех опциях -v, –verbose.

Если у нас содержится в директории источника актуальная информация, то чтобы не засорять приемник информацией, которая в процессе работы была удалена или перемещена в источнике, нужно старые файлы и директории удалить. Для этого есть несколько опций удаления, каждая из которых предоставляет свой алгоритм удаления. Их аж шесть!
--del — сокращенная форма --delete-during;
--delete — просто удалить посторонние файлы из приемника;
--delete-before — приемник удаляет перед передачей;
--delete-during — приемник удаляет в процессе передачи, но не перед;
--delete-delay — отложенное удаление/найти файлы для удаления в процессе передачи, но удалить после передачи;
--delete-after — приемник удаляет после передачи, но не перед ней;
--delete-excluded — так же удалить исключенные файлы в приемнике, для этого задается шаблон (--exclude=PATTERN).

https://habr.com/ru/sandbox/37102/

image_pdfimage_print

Leave a Reply

Your email address will not be published. Required fields are marked *