MyTetra Share
Делитесь знаниями!
RSYNC_настройки2
25.12.2018
10:58
Автор: alensav
Текстовые метки: sync, синхронизация
Раздел: MyTetra

Настраиваем rsync за 5 минут.

Май 11, 2011 NicK Оставьте комментарий Go to comments    

  

Rate This

Введение
Реализация Rsync-сервера построена следующим образом. Есть отдельный сервер куда будут складываться все бэкапы. С этого сервера запускается по крону команда rsync с параметрами, которая реализует коннект к удаленным машинам в сети. На всех машинах работает Rsync-служба, в конфиге которой прописано какие именно каталоги нужно синхронизировать.
Настройка Rsync — службы, на удаленных серверах

Устанавливаем все необходимое:

# yum -y install rsync xinetd

Добавляем в атозагрузку сервис xinetd:

# chkconfig —add xinetd

Разрешаем rsync:

# vim /etc/xinetd.d/rsync

Меняем disable = yes на disable = no и сохраняем изменения.

Пишем конфигурацию для демона rsync:

# vim /etc/rsyncd.conf

pid file = /var/run/rsyncd.pid

# Файл приветствия (информация о самом сервере, полезно когда серверов будет много)
motd file = /etc/rsync.motd

# Файл логов
log file = /var/log/rsyncd.log

# Писать в лог о скачиваемых файлах
transfer logging = true

# Описание секции для синхронизации /etc/
[etc]
path = /etc/
uid = root
read only = yes
list = yes
comment = etc directory
hosts allow = 192.168.1.19,192.168.1.201
#разрешенные пользователи для доступа:
auth users = backup
secrets file = /etc/rsyncd.scrt

Теперь создадим файл приветствия, и файл для логов.

# vim /etc/rsync.motd

#################################################################

Hello from rsync server
Server Adress : 192.168.1.198

#################################################################

# touch /var/log/rsyncd.log
# chmod 0600 /var/log/rsyncd.log
# chown root:wheel /var/log/rsyncd.log
# cat > /etc/rsyncd.scrt
admin:passwd

# chown root:wheel /etc/rsyncd.scrt
# chmod 0600 /etc/rsyncd.scrt

Настройка Rsync — скрипта, на BackUp — сервере



На BackUp — сервере создаем директории, куда будут складываться все резервные копии.

# mkdir -p /home/backup/192.168.1.198/etc
# chmod -R 0700 /home/backup/192.168.1.198/etc

Создаем файл с паролем.

# cat > /etc/rsyncd.scrt
passwd

Задаем права доступа:

# chown root:wheel /etc/rsyncd.scrt
# chmod 0600 /etc/rsyncd.scrt

Проверяем:

# rsync 192.168.1.198::
#################################################################

Hello from rsync server
Server Address : 192.168.1.198

#################################################################

Теперь делаем полную синхронизацию:

rsync -uvroghtp —progress —delete-after —password-file=/etc/rsyncd.scrt admin@192.168.1.198::backup /etc/BACKUP/server/

Детальное описание ключей rsync
-v, —verbose увеличение отладочной информации
-u, —update пропускать обновление файлов, которые новее исходных
-r, —recursive рекурсия в директориях
-o, —owner сохранить владельца (только под root)
-g, —group сохранить группу
-h, —human-readable вывод цифр в читаемом виде (Кб, Мб, Гб)
-t, —times сохранить дату изменения
-p, —perms сохранить права доступа

—delete-after удалить после. Если в основном месте был удален какой-то файл, или каталог,
то после синхронизации в backup сервере, в каталоге он тоже будет удален
—password-file Путь, где находится файл с паролем.

Обязательно включите ключ -v, —verbose, тогда в консоль вам будет выводиться вся информация о процессе. Если у вас настроено отсылка сообщений службой ssmtp, то вы сможете получать письма с информацией о том как отработал cron. И соответственно как прошла синхронизация.

Для автоматизации можно добавить задание в крон.

 
MyTetra Share v.0.52
Яндекс индекс цитирования