Окт 22 2008

rsync

Часто требуется синхронизировать содердимое каталогов на разных серверах. Для этого проще всего настроить rsync.
Устанавливаем из портов:

cd /usr/ports/net/rsync/
make install clean

Эту операцию нужно сделать и там где будет стоять сервер(оттуда мы будем получать новые и измененные файлы) и на клиенте(он будет вытягивать к себе изменения).
Пример настройки сервера(rsyncd.conf):

pid file = /var/run/rsyncd.pid
log file = /var/log/rsyncd.log
#Секция описывающая директорию
#которую мы можем синхронизировать
[bin]
        uid = root
        gid = wheel
#путь к директории
        path = /usr/home/sh/bin/
        comment = My bin 
        max connections = 4
        read only = yes
#IP с которого разрешено подключаться
        hosts allow = 89.252.34.110
#Пользователь которому разрешено подключаться
        auth users = hilik
        max verbosity = yes
#Файл в котором хранятся данные авторизации
        secrets file = /usr/local/etc/rsyncd.secrets

Пример /usr/local/etc/rsyncd.secrets:

hilik:hilik

В файле описан в первом поле login во втором пароль на сессию
После того как вышеописанные процедуры будут выполнены, необходимо включить автозапуск rsyncd в rc.conf

echo "rsyncd_enable=YES" >>/etc/rc.conf

Можно запускать сервер:

/usr/local/etc/rc.d/rsyncd start

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

#!/bin/sh
#Устанавливаем пароль
RSYNC_PASSWORD='hilik'
export RSYNC_PASSWORD
#Указываем какой локальный каталог предназначен для синхронизации
PATH='/home/sh/bin'
#Путь к команде rsync
RSYNC='/usr/local/bin/rsync'
#Название экспортируемой директории
#Так как она описана в rsyncd.conf
EXP='bin'
#Адрес хоста с которым мы будем синхронизировать каталоги
HOST='89.252.34.107'
#Имя пользователя
USER='hilik'
#Непосредственный запуск rsync
#Конструкция --exclude="*~" запрещает синхронизацию файлов с ~ в конце
$RSYNC -av --exclude="*~" rsync://$USER@$HOST/$EXP $PATH

После того как мы создали скрипт синхронизации мы можем его выполнить.

Добавить в закладки:

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Украинская Баннерная Сеть