Давайте дружить в Телеграме: рассказываем про новые фичи, общаемся в комментах, прислушиваемся к вашим идеям Подписаться

Установка и настройка Rsync

Команда Timeweb Cloud
Команда Timeweb Cloud
Наши инженеры, технические писатели, редакторы и маркетологи
31 января 2022 г.
199
5 минут чтения
Средний рейтинг статьи: 5

New Documentation

Синхронизация файлов и папок – один из инструментов для организации совместной работы над проектами. Процедура особенно эффективна, если проводится резервное копирование документов и файлов других типов на облачный диск, вынесенный за пределы внутренней IT-инфраструктуры. Программа Rsync как раз и используется для синхронизации, копирования папок или отдельно взятых файлов на удаленные хосты.

Установка И Настройка Rsync (1)

Перечень возможностей Rsync

В продукт встроена уникальная функция, позволяющая переносить только изменения, а не файлы целиком. Такой подход экономит трафик сети, снижает риски сбоев при обрыве связи, увеличивает скорость резервирования. Наиболее существенным выигрыш оказывается при обработке больших проектов, когда изменения происходят в них часто из-за значительно количества участников. И это еще не полный перечень возможностей.

Так, еще Rsync под Linux умеет:

  1. Первая синхронизация – это полная передача файлов, затем программа проверяет изменения и копирует только «новые» блоки (фактически побайтовым способом).
  2. Информация сжимается – утилита применяет алгоритм Deflate при помощи библиотеки zlib, это снижает нагрузку на каналы связи.
  3. Переносятся права – Rsync в Ubuntu и на других платформах реплицирует как каталоги и файлы, так и разрешения на них.

Последнее позволяет работать без предоставления прав root – такой подход позволяет резервировать данные и восстанавливать их под любым пользователем, независимо от учетной политики. Утилита была разработана взамен RCP, используемой еще под Unix. Поэтому в нее и внесли столь важные и ранее недостающие возможности. На практике ее часто используют для создания «зеркал», которые подключаются на случай краха системы, например, из-за поломки оборудования.

Как установить и настроить Rsync на CentOS

Процедура инсталляции обычно не вызывает затруднений. Программу берут в репозитории ОС, с которой предстоит работать (например, CentOS 8). Она состоит из двух частей – серверной, которая принимает входящие обращения на синхронизацию, и клиентской, инициирующей запросы. Работа Rsync осуществляется по каналу SSH (по умолчанию), с указанным в конфигурации каталогом.

Последовательность команд по инсталляции и настройке:

dnf -y install rsync rsync-daemon
mkdir /tmp/share
vi /etc/rsyncd.conf
pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file = /var/log/rsync.log [s]

Конфигурирование проводится через ручное изменение текстового файла rsyncd.conf. Содержится он в каталоге /ETC, а редактируется любой программой, поддерживающей данный формат. Список настроек следующий:

  • pid file – указать, куда сохранять номера процессов в активной сессии Rsync;
  • lock file – создать файл, который блокирует активацию дубля программы;
  • log file – лог-файл, куда вносятся все проводимые операции;
  • path – путь к директории, которую предстоит синхронизировать;
  • hosts allow – хосты, откуда разрешено принимать данные;
  • hosts deny – аналогично, но речь идет о хостах, от которых запрещено принимать данные;
  • list – флажок, позволяющий разрешить/запретить чтение директории;
  • uid – имя пользователя, указанное в качестве «автора» зарезервированных копий;
  • gid – группа пользователей, которая используется при пометке архивов;
  • read only – флажок блокирования архивной информации от удаления и изменения;
  • comment – комментарии.

В качестве uid и gid рекомендуется применять учетки без привилегий. После корректировок конфигурационного файла его закрывают с сохранением внесенных изменений. Остается настроить брандмауэр, чтобы тот не блокировал запросы, а резервирование работало автоматически по мере внесения корректировок в файлы на рабочих станциях.

setsebool -P rsync_full_access on
firewall-cmd --add-service=rsyncd --permanent
firewall-cmd --reload

Все, теперь утилита подготовлена к первому запуску:

 systemctl enable --now rsyncd

Синтаксис команд для работы с Rsync

При работе в консоли с утилитой Rsync применяют целый перечень ключей. Их вносят в строку с учетом принятого для программы синтаксиса. Структурный вид командной строки:

rsync -options <source> <destination>

Назначение блоков:

  • -options – параметры запуска;
  • <source> – каталог (файл), выступающий в качестве источника;
  • <destination> – директория-приемник файлов.

Примеры команд для Rsync:

  • -v, -verbose – при работе утилиты на экран выводятся отладочные данные;
  • -q, -quiet – отображение ошибок на экране запрещен;
  • -c, -checksum – сравнивается контрольная сумма документов, а не дата-время;
  • -a, -archive – подключение системы сжатия информации;
  • -r, recursive – активируется рекурсивное резервирование;
  • -b, -backup – утилита делает резервные копии файлов-оригиналов;
  • -backup-dir=<каталог> – директория, куда будут «складываться» архивы;
  • -suffix=SUFFIX – дополнение к имени файла, задаваемое при переносе в резервный каталог;
  • -u, -update – программа пропустит документы с более поздним временем обновления;
  • -progress – включается отображение уровня прогресса процедуры;
  • -delete – система удаляет файлы, если они исчезли из списка копирования;
  • -exclude=<имена файлов> – перечень документов, удаляемых из очереди синхронизации.

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

rsync -avzhHl /path/of/source/folder /path/to/destination/folder

Или работы с удаленным модулем Rsync Server:

rsync -avzhHl /path/of/source/folder
root@191.112.34.3:/path/to/destination/folder

Во втором случае пользователь указывает IP-адрес хоста, логин и пароль для доступа к нему.

Заключение

Мы разобрали примеры использования утилиты Rsync и краткий перечень ее популярных команд. Теперь дело за пользователем – остается арендовать облачный диск, например на timeweb.cloud, и перенести на него свои проекты. 

На рабочих файлах, особенно с критически важным содержимым, лучше применять проверенные параметры, в которых администратор на 100% уверен.

Зарегистрируйтесь и начните пользоваться
сервисами Timeweb Cloud прямо сейчас

15 лет опыта
Сосредоточьтесь на своей работе: об остальном позаботимся мы
165 000 клиентов
Нам доверяют частные лица и компании, от небольших фирм до корпораций
Поддержка 24/7
100+ специалистов поддержки, готовых помочь в чате, тикете и по телефону