Демон резервного копирования Rsync

From DD-WRT Wiki

(Redirected from Rsync Backup Server/ru)
Jump to: navigation, search

Contents

[edit] Введение

rsync (англ. remote synchronization) — программа для UNIX-подобных систем, которая эффективно выполняет синхронизацию файлов и каталогов в двух местах (необязательно локальных) с минимизированием трафика, используя кодирование данных при необходимости. Важным отличием rsync от многих других программ/протоколов является то, что зеркалирование осуществляется одним потоком в каждом направлении (а не по одному или несколько потоков на каждый файл). rsync может копировать или отображать содержимое каталога и копировать файлы, опционально используя сжатие и рекурсию. rsync передаёт только изменения файлов, что отражается на производительности программы.

В режиме демона rsync по умолчанию использует TCP-порт 873, синхронизируя файлы по собственному протоколу rsync или через удаленную оболочку RSH или SSH. В последнем случае исполняемый файл клиента rsync должен быть установлен как на локальной, так и на удаленной системах.

Отлично подходит для резервного копирования компьютеров сети в центральное хранилище. В этой статье объясняется, как настроить демон Rsync на маршрутизаторе DD-WRT и подключить к нему клиентские компьютеры в локальной сети.

rsync совместим с Windows, Mac и Linux.


[edit] Требования

  • Telnet или SSH
  • Настроенная система пакетов Optware
  • Скрипт автозапуска для установленных пакетов Optware
  • Поддержка USB или внешнего хранилища (для хранения резервных копий)
  • Служба Rsyncd
  • Клиентское приложение Rsync (для Windows, Mac или Linux)

Хорошая инструкция по настройке USB-накопителя на форуме.

[edit] Установка

Убедитесь, что система пакетов optware настроена правильно и что у вас есть доступ к ushare.

/opt/bin/ipkg-opt update
/opt/bin/ipkg-opt list | grep rsync

Возвращает: rsync - 3.0.4-2 - fast remote file copy program (like rcp)

/opt/bin/ipkg-opt install rsync

[edit] Базовая конфигурация сервера

Создайте каталог на USB-накопителе, например /mnt/drive1/rsync/pc1. Необходим накопитель с большим объемом памяти, поскольку на нём будут храниться резервные копии клиентских компьютеров.

vi /opt/etc/rsyncd.conf 

Я не уверен, что это самые безопасные UID и GID, но использование uid = nobody и gid = nogroup вызывает ошибки. А так работает просто отлично.

uid = root
gid = root
use chroot = yes
max connections = 5
syslog facility = local3
pid file = /var/run/rsyncd.pid
secrets file = /opt/etc/rsyncd.secrets

[pc1]
        path = /path/to/mass/storage/rsync/pc1
        comment = PC1 Rsync
        read only = no
        auth users = user1

[pc2]
        path = /path/to/mass/storage/rsync/pc2
        comment = PC2 Rsync
        read only = no
        auth users = user2


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


Откройте файл, содержащий список имен пользователей и паролей

vi /opt/etc/rsyncd.secrets

И задайте для каждого профиля имя пользователя и пароль в отдельной строке

user1:mypassword1
user2:mypassword2

Включить службу Rsync

vi /opt/etc/default/rsync

Изменив RSYNC_ENABLE=false на RSYNC_ENABLE=true


Запустите службу Rsync

/opt/etc/init.d/S57rsyncd start

Проверьте, работает ли она

ps | grep rsync

Должен отобразится

30081 root      1456 S    /opt/bin/rsync --daemon

[edit] Конфигурация клиента: Microsoft Windows

Я обнаружил, что программа DeltaCopy работает довольно быстро и без проблем как Windows-клиент.

Настройка довольно проста. Создайте новый профиль и установите следующие настройки:

  • Profile Name: любое имя профиля
  • Server IP: 192.168.1.1 или любой другой IP-адрес маршрутизатора
  • Virtual Directory Name: pc1 или как вы называли свой профиль в файле конфигурации rsync.conf (название секции вида "[pc1]")

Проверьте соединение (Test Connection) и добавьте профиль (Add Profile).

Нажмите на имя профиля и нажмите на вкладку аутентификации Authentication Tab.

Введите имя пользователя и пароль, которые вы указали в файле /opt/etc/rsyncd.secrets.

[edit] Конфигурация клиента: Apple macOS

Настройка macOS выполняется легко, так как rsync поставляется со всеми последними версиями системы. Просто используйте rsync, как в системе Linux. Например, чтобы создать резервную копию домашнего каталога для пользователя с именем John, в профиль с названием 'pc1':

rsync -az /Users/john user1@192.168.1.1:pc1

[edit] Конфигурация клиента: Linux

sudo apt-get install rsync
rsync --verbose  --progress --stats --compress \
     --recursive --times --perms --links --delete --exclude "*~" \
     /your/dir/to/backup/* user1@192.168.1.1:pc1

Вы можете настроить планировщик Cron, чтобы он делал это в ночное время.

[edit] Вопросы или комментарии

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

undertoe собака chemlab точка com

[edit] Ссылки

Полезные статьи и информация о macOS: