RSync. Игнор существующих файлов или обновление только новых файлов

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

Копирование с локального на удаленный компьютер

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

Поведение по умолчанию

Следующая команда рекурсивно скопирует все файлы с локальной файловой системы из папки /var/www на удаленный ПК 10.1.1.1:

rsync -raz --progress /var/www 10.1.1.1:/var

При этом:

  1. Все файлы, которых нет в удаленной системе будут скопированы.
  2. Все файлы, которые были обновлены будут также скопированы. При этом имейте ввиду, что rsync делает это очень эффективно, для измененных файлов будут скопированы только недостающие части, а файлы которые уже есть в папке назначения скопированы не будут
  3. Если файл удален в папке отправления, он будет удален в папке назначения

Игнорирование существующих файлов

Используйте ключ –ignore-existing чтобы пропустить копирование файлов существующих в папке назначения:

rsync --ignore-existing -raz --progress /var/www 10.1.1.1:/var

Таким образом, мы проводим копирование без п.2 и п.3 из предыдущего примера, то есть копирование будет проведено только с:

  1. Все файлы, которых нет в удаленной системе будут скопированы.

Ссылки

https://electrictoolbox.com/rsync-ignore-existing-update-newer/

Оставьте ответ

Ваш адрес email не будет опубликован.

99 ÷ 33 =