Многопоточный Rsync | синхронизируем директории

Сегодня в статье разберем как можно передавать файлы и директории в несколько потоков при помощи команды Rsync.

Рассмотрим пример по копированию и передачи директорий и фалов в данных директориях.

Т.е. у нас имеются директория с вложениями как фалов, так и еще поддиректориями со своими файлами. Вот её – родительскую директорию, мы и будем передавать в несколько потоков, тем самым увеличивая скорость передачи по сети.

Приведу сразу готовый пример передачи в несколько потоков:

find -type d | xargs -I '{}' -P 5 -n1 rsync -a --delete /home/old/Foto/'{}'/ /home/old/CloudDisk/'{}'/

Разберем данный пример:

find -type d
  • выводит имена всех директорий.
xargs -I '{}'
  • xargs запускает для каждого файла команду rsync
-P 5
  • количество одновременно запущенных команд (потоков rsync), то есть одновременно будут запущена передача 5-ти файлов. Каждый файл передается отдельно.
Друзья помогите этому контенту стать доступнее в социальных сетях.

Не проходи мимо жмакни по кнопке возможно кому то еще он будет полезен!