Синхронизация файлов с помощью rsync (Debian)

Posted by Hades on 28 Сентябрь 2009 in Новости |

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

На компьютере с которого мы будем синхронизировать ФС, ставим и настраиваем rsync сервер, на клиенте настраиваем rsync клиент.

На сервере и клиенте устанавливаем пакет rsync.

apt-get install rsync

Создаём файл rsyncd.conf в дирректории /etc

# Файл приветствия
motd file = /etc/motd
# Лог файл
log file = /var/log/rsyncd.log
# Писать в лог о скачивание файлов
transfer logging = true
# Описание секции DATA
[data]
# Путь к директории
path = /var/cache/svn/
# Под каким uid'ом работать
uid = root
# Только чтение
read only = yes
# Разрешать просмотр файлов
list = yes
# Комментарий
comment = ETC directory
# Хосты, которым разрешен доступ
hosts allow = 192.168.0.5
# Разрешенные пользователи
auth users = backup
# Путь к файлу с паролями
secrets file = /etc/rsyncd.scrt

Создаем необходимые файлы и директории

v-hades:~# touch /var/log/rsyncd.log
v-hades:~# chmod 0600 /var/log/rsyncd.log
v-hades:~# chown root:root /var/log/rsyncd.log
v-hades:~# cat > /etc/rsyncd.scrt
backup:1234
v-hades:~# chown root:root /etc/rsyncd.scrt
v-hades:~# chmod 600 /etc/rsyncd.scrt

Создадим файл для автоматического запуска rsync ( /etc/rc2.d/S99rsync )

#!/bin/sh
/usr/bin/rsync --daemon

А также необходимо запустить rsync

/usr/bin/rsync --daemon

Проверим на стороне клиента работу rsync

root@myhost:~# rsync backup@192.168.0.1::data

Password:
drwxr-xr-x         224 2008/03/28 09:50:01 .
-rw-rw-r--         229 2008/03/28 09:50:01 README.txt
-r--rw-r--           2 2008/03/28 09:50:01 format
drwxrwxr-x         128 2009/09/24 11:11:05 conf
drwxrwxr-x          48 2008/03/28 09:50:01 dav
drwxrwsr-x         256 2009/09/24 11:34:21 db
drwxrwxr-x         360 2008/03/28 09:50:01 hooks
drwxrwxr-x         104 2008/03/28 09:50:01 locks

Все конечно хорошо, но если запускать копирование по крону, то как вводить пароль? Для этого можно
указать password-file:

root@myhost:~# touch /etc/rsync.pwd
root@myhost:~# chmod 600 /etc/rsync.pwd
root@myhost:~# echo "1234" > /etc/rsync.pwd
root@myhost:~# rsync --password-file=/etc/rsync.pwd backup@192.168.0.1::data
drwxr-xr-x         224 2008/03/28 09:50:01 .
-rw-rw-r--         229 2008/03/28 09:50:01 README.txt
-r--rw-r--           2 2008/03/28 09:50:01 format
drwxrwxr-x         128 2009/09/24 11:11:05 conf
drwxrwxr-x          48 2008/03/28 09:50:01 dav
drwxrwsr-x         256 2009/09/24 11:34:21 db
drwxrwxr-x         360 2008/03/28 09:50:01 hooks
drwxrwxr-x         104 2008/03/28 09:50:01 locks

Для автоматической синхронизации необходимо указать:

rsync --password-file=/etc/rsync.pwd --update --recursive backup@192.168.0.1::data /var/cache/svn

Случайные статьи:

Добавить комментарий

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

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Security Code:

Copyright © 2008-2012 C миру по нитке… All rights reserved.
Desk Mess Mirrored version 1.9.1 theme from BuyNowShop.com.