headermask image


Advertisement

Rsync – современный способ синхронизации файлов

RSync — был разработан как замена старой команды rcp. С помощью которой производилось копирование файлов между машинами UNIX-систем. RSync очень удобен, так как его алгоритм построен так, что он отслеживает как изменился файл и копирует только необходимые части. Причём для выявления изменений, ему не надо сравнивать два файла. И работает это очень быстро.Кроме того, очень полезным будет его способность работать через ssh. Что обеспечивает шифрование канала, что очень важно, если вы синхранизируете два сервера в сети интернет. Для уменьшение трафика, rsync так-же умеет сжимать данные, при передаче по сети. Это очень мощная утилита, и надо быть с ней осторожным, с её помощью можно испортить данные.

Мы будем рассматривать rsync как средство синхронизации файлов между серверами, а не как систему раздачи файлов. В первом случае мы используем ssh, а во втором нам необходимо запускать сервер rsync.

Разберём на примере:

rsync -e ssh --progress -lzuogthvr --compress-level=9 \
 --delete-after root@<MASTER SERVER>:/home/<USER> /home/

или

rsync -e ssh --progress -lzuogthvr --compress-level=9 \
 --delete-after /home/<USER> root@<MASTER SERVER>:/home/

зависит от того, в какую сторону синхронизируем файлы

Обратите внимание на последний слеш, так как он имеет значение для rsync. Если на конце исходной директории стоит «/», то это означает копирование содержимого директории; отсутствие слеша означает копирование директории и ее содержимого.

Ключи:

  • e — заменяет протокол с rsh на ssh
  • progress — вывод хода процесса работы на терминал
  • l — пересоздание symlinks, это значит, что символические ссылки будут так же переноситься
  • z — использовать сжатие
  • u — update. Обновление, он будет пропускать файлы которые новей, чем на удалённом сервере
  • o — установить владельца конечного файла таким же, как и у исходного
  • g — установить группу конечного файла таким же, как и у исходного
  • t — передача времени модификации и его обновление на удаленной системе. Этот ключ должен быть установлен для точной синхронизации
  • h — вывод информации на терминал в удобном для чтения (human-readable) виде
  • v — verbose. Вывод сообщений в терминал.
  • r — рекурсивный режим
  • n — отладочный режим
  • compress-level — уровень сжатия
  • delete-after — удалять файлы, которые не были найдены на удалённом сервере, “-after” означает, что удалить их нужно, только после окончания синхранизации. Так-же есть delete-before, delete-during, delete-excluded и просто delete

отладочный режим

Перед тем как запустить скрипт на рабочей машине, опробуйте всё в отладочном режиме, для этого используется ключь “-n”. В этом случае, rsyncне будет менять или удалять файлы, но покажет, весь ход работы.

исключение файлов

RSync может как исключать, так и включать файлы, по заданному шаблону. Например —exclude *.run исключит все файлы с расширением run.

Постовой

Если вы интересуетесь способа продвижения и раскрутки сайтов, оптимизацией, этот seo блог для вас.

Оригинальные методы верстки сайтов.

Похожие посты
  • Локальный репозитарий для CentOS
  • Настройка сервера обновлений CentOS
  • Скрипт, закрывающий Outlook перед началом резервного копирования PST файлов
  • Быстрый способ проверки возможности подключения к SQL
  • Перемещение файлов баз данных SQL в Forefront TMG 2010
  • Что делать если получили BSOD? Способ ковыряния в дампе Windows
  • Правила написания и структура reg-файлов
  • Как происходит фрагментация файлов в операционных системах Windows XP/Windows Server 2003
  • LPI 101: GNU и UNIX команды. Редактирование файлов в vi
  • FreeNAS: создаём сетевое хранилище (NAS)
  • Комментарии

    Your email is never published nor shared. Required fields are marked *

    *
    *