Копирования (синхронизация) данных с удаленного сервера на сетевое хранилище (NAS)
rsync - утилита для дифференциального копирования и синхронизации файлов и каталогов на Unix-подобных операционных системах. Она позволяет создавать резервные копии файлов, реплицировать данные между компьютерами, а также обеспечивать синхронизацию файлов между локальным и удаленным хранилищами.
Необходимо было разово выполнить процедуру резервного копирования данных с удаленного сервера на сетевое хранилище в локальной сети
Исходные данные:
- ip-адрес сетевого хранилища: 192.168.0.17
- ip-адрес удаленного сервера: 8.8.8.8
Подключаемся по ssh к сетевому хранилищу
1
$ ssh [email protected]
Оттуда запускаем команду синхронизации
1
$ rsync -rltvzu --progress [email protected]:/home/data/ /volume1/Backup/data
где:
-r
- рекурсивный режим (копирование всех подпапок и файлов в них)-l
- копировать символические ссылки «как есть», то есть rsync не будет следовать по ним, обращаясь к файлам-t
- обновлять время модификации файла на приёмной стороне-v
- подробные вывод операций-z
- компрессия данных при передаче-u
- режим обновления, пропускаются файлы на получателе, имеющие более позднюю дату модификации, чем в источнике/home/data/
- соержимое каталога, который мы копируем (!!! обратный слэш в конце)/volume1/Backup/data
- каталог, куда будут скопированы данные
В команде rsync
отсутствует ключ -a
, так как в него входят другие ключи, из-за которых синхронизация не выполнялась
Основные ключи команды
-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
, ограничение скорости копирования.
Авторский пост защищен лицензией CC BY 4.0 .