Rsync или удаленная синхронизация — это утилита на основе Linux и Unix, которая эффективно синхронизирует файлы и каталоги между двумя устройствами или хостами. В этом процессе синхронизации один из них является локальным хостом или источником, из которого мы будем синхронизировать файлы, а другой — удаленным хостом, на котором будет происходить вся синхронизация. Rsync может синхронизировать или копировать данные несколькими способами:
Rsync хорошо известен своим развертыванием дельта-алгоритма, который позволяет rsync копировать только изменения, сделанные в исходных файлах на локальном хосте и текущие файлы на удаленном хосте.
Параметр –ignore-existing в команде rysnc заставляет rsync игнорировать обновления файлов, уже существующие в месте назначения. Эта операция не игнорирует существующие каталоги, потому что в этом случае ничего не будет сделано. Поскольку это правило передачи, а не исключение, оно не влияет на данные, проходящие через списки файлов и удаление. Эта опция ограничивает только передачу файлов, запрашиваемую получателем.
Когда вы используете опцию «–link-dest» в сочетании с командой rsync, она создаст новый каталог для резервного копирования данных. Что, если вдруг резервное копирование было прервано, и вы захотите возобновить его? Что вы будете делать в такой ситуации? rsync может эффективно использовать операцию «игнорировать существующий» для решения этой проблемы. Использование «–ignore-existing» гарантирует, что уже обработанные файлы не будут изменены. Это означает, что «–ignore-existing» будет смотреть только на уже существующие файлы, присутствующие в целевой иерархии.
Теперь перейдем к практической реализации этой формы команды rsync.
Вот синтаксис команды rsync с параметром –ignore-existing:
$ sudo rsync --ignore-existing -raz --progress Source username@remote_host:Destination
В приведенном ниже примере мы синхронизируем файл с удаленной системой. Следовательно, «–ignore-existing» ограничит rsync синхронизацией только тех файлов из локальной системы, которые еще не скопированы в место назначения.
$ sudo rsync --ignore-existing -raz --progress /var andreyex@10.0.2.15:/tmp/
Добавьте свое имя пользователя и IP-адрес хоста в приведенную выше команду и проверьте результат.
Выходные данные также показывают прогресс при синхронизации файлов из локальной системы в удаленную.
Пользователи Linux обычно делают резервные копии своих данных в удаленных системах. Одно из самых невероятных преимуществ, которое каждый может получить от этого удаленного резервного копирования данных, — это надежность. В Linux для создания резервных копий используется множество инструментов командной строки, и лучше всего подходит команда rsync. Команда rsync –ignore-existing позволяет пользователю возобновить прерванное резервное копирование и игнорировать существующие файлы места назначения.
Очень полезный параметр для защиты от перезаписей бэкапов, чем любят заниматься операторы шифровальщиков) Потому что нельзя восстановить предыдущий файл, который был перезаписан новым файлом с тем же именем