Синхронизация файлов между серверами при помощи Rsync

RSync это замена для старого rcp с помощью которого можно копировать файл между UNIX системами.RSync использует алгоритм отслеживающий изменения файла и копирует только необходимые части. Так же появилось множество новых возможностей, таких как работа через SSH или сжатие данных перед началом передачи. Я использую Rsync для синхронизации файлов между серверами, для этого можно использовать такие команды:

rsync -e ssh —progress -lzuogthvr —compress-level=9 —delete-after root@<IP или имя сервера>:/home/<USER> /home/

или

rsync -e ssh —progress -lzuogthvr —compress-level=9 —delete-after /home/<USER> root@<IP или имя сервера>:/home/

зависит от направления синхронизации.

Если вам нужно исключить какие-то файлы, вы можете использовать ключ —exclude

Ключи:

  • 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

P.S. Не забудте организовать без парольный доступ между серверами по SSH.

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

Loading…


Количество просмотров :4161

Оставьте коментарий