Инструменты пользователя

Инструменты сайта


wiki:technical:soft:rsync

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:technical:soft:rsync [2014/06/03 16:42]
alexander
wiki:technical:soft:rsync [2017/04/07 19:51] (текущий)
Строка 1: Строка 1:
-====== rsync ====== +====== Rsync ====== 
-rsync - программа, которая выполняет синхронизацию файлов и каталогов, может копировать или отображать содержимое каталога и копировать файлы, опционально используя сжатие и рекурсию.+**rsync** - программа, которая выполняет синхронизацию файлов и каталогов, может копировать или отображать содержимое каталога и копировать файлы, опционально используя сжатие и рекурсию.
  
 ===== Установка ===== ===== Установка =====
-На примере Debian:+На примере **Debian**:
 <code> <code>
 # aptitude install rsync # aptitude install rsync
Строка 10: Строка 10:
 ===== Копирование ===== ===== Копирование =====
 На сервере-приемнике правим **/etc/default/rsync**. Меняем в строке "RSYNC_ENABLE=false" //false// на //true//. Правим (создаем) **/etc/rsyncd.conf**. Прописываем туда: На сервере-приемнике правим **/etc/default/rsync**. Меняем в строке "RSYNC_ENABLE=false" //false// на //true//. Правим (создаем) **/etc/rsyncd.conf**. Прописываем туда:
-<file>+<file txt /etc/rsyncd.conf>
 log file=/var/log/rsyncd log file=/var/log/rsyncd
 pid file=/var/run/rsyncd.pid pid file=/var/run/rsyncd.pid
 socket options = SO_KEEPALIVE socket options = SO_KEEPALIVE
 </file> </file>
-и запускаем rsync:+и запускаем **rsync**:
 <code> <code>
-/etc/init.d/rsync start+service rsync start
 </code> </code>
 rsync-сервер к приему данных готов. rsync-сервер к приему данных готов.
  
-На сервере-передатчике запускаем rsync:+На сервере-передатчике запускаем **rsync**:
 <code> <code>
 # rsync -e ssh --progress -lzuogthvr --compress-level=9 --delete-after /mydir/sourcedir username@remoteserver:/backupdir/ # rsync -e ssh --progress -lzuogthvr --compress-level=9 --delete-after /mydir/sourcedir username@remoteserver:/backupdir/
 </code> </code>
 где: где:
-  * -e ssh - Использовать SSH для связи. +  * **-e ssh** -- использовать **SSH** для связи (В данном примере рассматриваем подключение поверх удаленной оболочки, а не непосредственно к rsync-серверу. При этом требуется ввод логина и пароля. Для использования этого способа в cron можно настроить [[wiki:technical:soft:ssh_keys|ssh доступ по ключу]], без ввода пароля)
-  * ‑‑progress - Показывать прогресс копирования. +  * **‑‑progress** -- показывать прогресс копирования. 
-  * -l - Пересоздавать synlinks, т.е. на удаленном сервере будут созданы симлинкиссылающиеся на нужное место. Даже если на удаленном сервере этого места не существует - лучше делать так, т.кпри возвращении резервной копии на этом компьютере симлинки станут рабочими. +  * **-l** -- пересоздавать symlinks, т.е. на удаленном сервере будут созданы символические ссылки, указывающие на нужное место. Даже если на удаленном сервере этого места не существует - лучше это делатьтак как при возвращении резервной копии на этом компьютере ссылки станут рабочими. 
-  * -z - Использовать сжатие (для экономии трафика). Если много сжимать - копирование может занять много времени. Можно отказаться от этой опции в случае недостаточной мощности процессора. +  * **-z** -- использовать сжатие (для экономии трафика). Если много сжимать - копирование может занять много времени. Можно отказаться от этой опции в случае недостаточной мощности процессора. 
-  * -u - Режим обновления, т.е. инкрементальное копирование. rsync скопирует только те файлы, которые еще не существуют на удаленном сервере или которые были изменены. +  * **-u** -- режим обновления, инкрементальное копирование. **rsync** скопирует только те файлы, которые еще не существуют на удаленном сервере или которые были изменены. 
-  * -o - Установить пользователя-владельца скопированного файла таким-же, как и у оригинала. +  * **-o** -- установить пользователя-владельца скопированного файла таким-же, как и у оригинала. 
-  * -g - Установить группу-владельца скопированного файла таким-же, как и у оригинала. +  * **-g** -- установить группу-владельца скопированного файла таким-же, как и у оригинала. 
-  * -t - Установить время создания/модификации файла на удаленном сервере такое-же, как и у оригинала. Опция обязательна для инкрементального копирования - иначе время файла на удаленном компьютере установится текущим. +  * **-t** -- установить время создания/модификации файла на удаленном сервере такое-же, как и у оригинала. Опция обязательна для инкрементального копирования - иначе время файла на удаленном компьютере установится текущим. 
-  * -h - Вывод информации на экран в удобном для человека виде (human-readable). +  * **-h** -- вывод информации на экран в удобном для человека виде (human-readable). 
-  * -v - Verbose-вывод (т.е. расширенная информация в процессе копирования). +  * **-v** -verbose-вывод (т.е. расширенная информация в процессе копирования). 
-  * -r - Рекурсивное копирование (т.е. все, что находится по указанному пути, включая поддиректории). +  * **-r** -- рекурсивное копирование (т.е. все, что находится по указанному пути, включая поддиректории). 
-  * ‑‑compress-level=9 - Уровень сжатия (0-9) +  * **‑‑compress-level=9** -- уровень сжатия (0-9) 
-  * ‑‑delete-after - Изменяет поведение утилиты. По умолчанию, утилита сначала удаляет целевой файл, если он существует, и только потом копирует его замену, что полезно при передаче больших файлов на сервер, на котором слабо со свободным местом. Если же указать ‑‑delete-after - то сначала в temp-директорию будет скачан новый файл, а уже потом будет произведено удаление старого+  * **‑‑delete-after** -- изменяет поведение утилиты. По умолчанию, утилита сначала удаляет целевой файл, если он существует, и только потом копирует его замену, что полезно при передаче больших файлов на сервер, на котором слабо со свободным местом. При использовании опции **‑‑delete-after** сначала в **/temp** будет скачан новый файл, а затем будет выполнена замена целевого с удалением
-  * /mydir/sourcedir - директория, которая будет скопирована. +  * **/mydir/sourcedir** -- директория, которая будет скопирована. 
-  * username - имя пользователя для подключения на удаленный сервер. +  * **username** -- имя пользователя для подключения на удаленный сервер. 
-  * remoteserver - ip-адрес или hostname удаленного сервера. +  * **remoteserver** -- ip-адрес или hostname удаленного сервера. 
-  * /backupdir/ - Директория, в которую будет положена копируемая папка (должна существовать).+  * **/backupdir/** -- директория, в которую будет положена копируемая папка (должна существовать).
  
 ===== Восстановление ===== ===== Восстановление =====
wiki/technical/soft/rsync.1401813733.txt.gz · Последнее изменение: 2017/04/07 19:50 (внешнее изменение)