wiki:technical:soft:rsync
Это старая версия документа!
rsync
rsync - программа, которая выполняет синхронизацию файлов и каталогов, может копировать или отображать содержимое каталога и копировать файлы, опционально используя сжатие и рекурсию.
Установка
На примере Debian:
# aptitude install rsync
Настройка
На сервере-приемнике правим /etc/default/rsync. Меняем в строке «RSYNC_ENABLE=false» false на true. Правим (создаем) /etc/rsyncd.conf. Прописываем туда:
log file=/var/log/rsyncd pid file=/var/run/rsyncd.pid socket options = SO_KEEPALIVE
и запускаем rsync:
# /etc/init.d/rsync start
rsync-сервер к приему данных готов.
На сервере-передатчике запускаем rsync:
# rsync -e ssh --progress -lzuogthvr --compress-level=9 --delete-after /mydir/sourcedir username@remoteserver:/backupdir/
где:
- -e ssh - Использовать SSH для связи.
- ‑‑progress - Показывать прогресс копирования.
- -l - Пересоздавать synlinks, т.е. на удаленном сервере будут созданы симлинки, ссылающиеся на нужное место. Даже если на удаленном сервере этого места не существует - лучше делать так, т.к. при возвращении резервной копии на этом компьютере симлинки станут рабочими.
- -z - Использовать сжатие (для экономии трафика). Если много сжимать - копирование может занять много времени. Можно отказаться от этой опции в случае недостаточной мощности процессора.
- -u - Режим обновления, т.е. инкрементальное копирование. rsync скопирует только те файлы, которые еще не существуют на удаленном сервере или которые были изменены.
- -o - Установить пользователя-владельца скопированного файла таким-же, как и у оригинала.
- -g - Установить группу-владельца скопированного файла таким-же, как и у оригинала.
- -t - Установить время создания/модификации файла на удаленном сервере такое-же, как и у оригинала. Опция обязательна для инкрементального копирования - иначе время файла на удаленном компьютере установится текущим.
- -h - Вывод информации на экран в удобном для человека виде (human-readable).
- -v - Verbose-вывод (т.е. расширенная информация в процессе копирования).
- -r - Рекурсивное копирование (т.е. все, что находится по указанному пути, включая поддиректории).
- ‑‑compress-level=9 - Уровень сжатия (0-9)
- ‑‑delete-after - Изменяет поведение утилиты. По умолчанию, утилита сначала удаляет целевой файл, если он существует, и только потом копирует его замену, что полезно при передаче больших файлов на сервер, на котором слабо со свободным местом. Если же указать ‑‑delete-after - то сначала в temp-директорию будет скачан новый файл, а уже потом будет произведено удаление старого.
- /mydir/sourcedir - директория, которая будет скопирована.
- username - имя пользователя для подключения на удаленный сервер.
- remoteserver - ip-адрес или hostname удаленного сервера.
- /backupdir/ - Директория, в которую будет положена копируемая папка (должна существовать).
wiki/technical/soft/rsync.1401813573.txt.gz · Последнее изменение: 2017/04/07 22:50 (внешнее изменение)