Горькие уроки судьбы адресованы низшему началу человека (Авессалом Подводный).

Как синхронизировать новые и измененные файлы с помощью команды ‘rsync’

22.08.2024
Как синхронизировать новые и измененные файлы с помощью команды ‘rsync’

Как системный администратор или опытный пользователь Linux, вы, вероятно, сталкивались или даже несколько раз использовали универсальную в Linux команду rsync, которая позволяет пользователям быстро копировать или синхронизировать файлы локально и удаленно. Это также отличный инструмент, широко используемый для операций резервного копирования и зеркалирования.

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

Кроме того, он разрешает копирование ссылок, устройств, владельца файла или каталога, групп и разрешений. Он также поддерживает использование без прав root в сочетании со многими другими.

Одним из существенных отличий rsync от других команд управления файлами в Linux является использование протокола удаленного обновления для передачи только различий между файлами или содержимым каталога.

Поэтому в этой статье мы рассмотрим, как rsync может помочь нам синхронизировать только новые или измененные файлы или содержимое каталога при создании резервных копий и за их пределами в Linux.

Для начала вам нужно помнить, что традиционная и простейшая форма использования rsync заключается в следующем:

rsync options source destination

 

Тем не менее, давайте углубимся в некоторые примеры, чтобы раскрыть, как на самом деле работает описанная выше концепция.

 

Читать  Grep для нескольких строк и шаблонов

Локальная синхронизация файлов с помощью Rsync

С помощью приведенной ниже команды можно локально скопировать файлы из каталога «Мои документы» в каталог «/tmp/documents«:

rsync -av Documents/* /tmp/documents

 

В приведенной выше команде опция:

  • -a – означает режим архивирования.
  • -v – означает подробный, показывающий детали текущих операций.

 

По умолчанию rsync копирует только новые или измененные файлы из источника в пункт назначения, когда мы добавляем новый файл в свой каталог Documents, это то, что происходит после повторного запуска той же команды:

rsync -av Documents/* /tmp/documents

 

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

Опция --update или -u позволяет rsync пропускать файлы, которые все еще являются новыми в каталоге назначения, и одна важная опция, --dry-run или -n позволяет нам выполнить тестовую операцию без внесения каких-либо изменений. Он показывает нам, какие файлы необходимо скопировать.

rsync -aunv Documents/* /tmp/documents

 

После выполнения тестового запуска мы можем избавиться от -n и выполнить реальную операцию:

rsync -auv Documents/* /tmp/documents

 

Синхронизация файлов из локального в удаленный Linux

В приведенном ниже примере я копирую файлы со своего локального компьютера на удаленный сервер с IP–адресом — 10.42.1.5. Чтобы синхронизировать только новые файлы на локальном компьютере, которых нет на удаленном компьютере, мы можем включить опцию --ignore-existing:

rsync -av --ignore-existing Documents/* aaronkilik@10.42.1.5:~/all/

 

Читать  Как сделать BASH лучше

Впоследствии, чтобы синхронизировать на удаленном компьютере только обновленные или измененные файлы, которые изменились на локальном компьютере, мы можем выполнить пробный запуск перед копированием файлов, как показано ниже:

rsync -av --dry-run --update Documents/* aaronkilik@10.42.1.5:~/all/
rsync -av --update Documents/* aaronkilik@10.42.1.5:~/all/

 

Чтобы обновить существующие файлы и предотвратить создание новых файлов в месте назначения, мы используем опцию --existing.

Вы можете просмотреть страницу man rsync, чтобы найти дополнительные полезные опции для расширенного использования. Как я упоминал ранее, rsync — очень мощный и универсальный инструмент Linux, и многие системные администраторы и опытные пользователи Linux знают, насколько это выгодно.

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Если статья понравилась, то поделитесь ей в социальных сетях:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Это может быть вам интересно


Загрузка...

Спасибо!

Теперь редакторы в курсе.

Scroll to Top