====== rsync ====== * **-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**, ограничение скорости копирования. Скопируется на сервер 192.168.0.1 содержимое папок /backup/file1/ /backup/file2/ в папку backup: # rsync -zavP /backup/file1/ /backup/file2/ user@192.168.0.1:/backup В этом примере уже скопируются сами папки: # rsync -zavP /backup/file1/ /backup/file2/ user@192.168.0.1:/backup Как ограничить скорость передачи файлов? Нужно поставить опцию --bwlimit: # rsync -zavP --bwlimit=100 /backup/file1/ user@192.168.0.1:/backup Как синхронизировать файлы с проверкой по контрольной сумме? # rsync -сzavP /backup/file1/ user@192.168.0.1:/backup Как скопировать файлы с удаленной машины на локальную? # rsync -zavP user@192.168.0.1:/backup /backup/file1/ Как исключить файл или директорию при копировании? Исключаем директорию /temp: # rsync -azVP --exclude /temp/ /home/data/ user@192.168.0.1:/backup Как использовать нестандартный порт ssh при копировании rsync? # rsync -zavP '-e ssh -p 12345' /var/lib/ root@192.168.0.1:/backup