Как работать с rsync в linux/freebsd

Как работать с rsync в linux/freebsd Как работать с командой rsync
Основные ключи команды rsync:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
-a,  режим архивирования, включает ключи -rlptgoD;
-r,  каталоги копируются рекурсивно;
-l,  копировать символические ссылки «как есть», то есть rsync не будет следовать по ним, обращаясь к файлам;
-p,  сохранение прав доступа к файлам;
-t,  сохранение времени модификации файлов;
-g, -o, сохранение владельца и группы файла;
-D,  сохранение файлов устройств и специальных файлов;
-u,  режим обновления, пропускаются файлы на получателе, имеющие более позднюю дату модификации, чем в источнике;
-v,  выводит имена копируемых файлов;
-q,  не выводит сообщения об ошибках;
-z,  включение режим сжатия;
-P,  отображение прогресса при копировании;
-с,  проверка файлов по контрольной сумме, а по размеру и дате модификации. Дополнительная нагрузка на процессор, сильно увеличивает время синхронизации;
--ignore-errors,  продолжение копирования и удаления даже после появления ошибок;
--max-delete,  максимальное число удаляемых за один раз файлов и каталогов;
--files-from=FILE,  задается список файлов и директорий для копирования в файле;
-e ssh,  использование при копировании ssh;
--bwlimit=KBPS,  ограничение скорости копирования.
Несколько простых примеров:
1
2
3
4
rsync -zavP /backup/file1/ /backup/file2/ user@1.1.1.1:/backup
# Будет копирование на сервер 1.1.1.1 содержимого папок /backup/file1/ /backup/file2/ в папку backup
rsync -zavP /backup/file1 /backup/file2 user@1.1.1.1:/backup
# В этом примере уже копируются сами папки
Как ограничить скорость передачи файлов? Нужно поставить опцию --bwlimit :
1
rsync -zavP --bwlimit=100 /backup/file1/ user@1.1.1.1:/backup
Как синхронизировать файлы с проверкой по контрольной сумме?
1
rsync -сzavP /backup/file1/ user@1.1.1.1:/backup
Как скопировать файлы с удаленной машины на локальную?
1
rsync -zavP user@1.1.1.1:/backup /backup/file1/
Как исключить файл или директорию при копировании?
1
2
rsync -azVP --exclude /temp/ /home/data/ user@192.168.0.1:/backup
# Исключаем директорию /temp
Как использовать нестандартный порт ssh при копировании rsync?
1
rsync -zavP '-e ssh -p 12345' /var/lib/ root@1.1.1.1:/backup
Как копировать с помощью ключа:
1
2
rsync -Pva -e 'ssh -i /home/support/.ssh/id_rsa' root@1.1.1.1:/var/www/html/site1 /home/support/Загрузки/
# скопировали site1 в папку Загрузки на локальный компьютер.
More
hit.ua: посетителей за сегодня