Rain WikiWindows · Linux · Android

rsync

Инструмент командной строкиВсе дистрибутивы Linux

rsync копирует файлы между директориями или компьютерами и передает только измененные данные, что ускоряет повторное копирование и создание резервных копий. Утилита работает локально или через SSH и сохраняет права доступа, время и ссылки при использовании опции -a.

1Основные опции

-a (archive) сохраняет права доступа, время, владельцев и символические ссылки, а также выполняет рекурсивное копирование. -v отображает каждый файл, -h выводит размеры в читаемом виде, -z сжимает данные при передаче по сети, а --progress показывает прогресс выполнения.

2Завершающий слэш

rsync -a src/ dest/ копирует содержимое src в dest. rsync -a src dest/ копирует саму директорию, создавая dest/src. Ошибки в этом — самая частая проблема при работе с rsync.

3--delete и --dry-run

--delete удаляет файлы в месте назначения, которых больше нет в источнике, создавая точное зеркало. --dry-run (-n) показывает, что произойдет, не внося никаких изменений; эту опцию всегда следует использовать перед применением --delete.

Как создать резервную копию папки на сервере

  1. Сначала протестируйте: rsync -avhn --delete ~/Documents/ user@server:/backup/Documents/
  2. Просмотрите список файлов, которые будут скопированы или удалены.
  3. Запустите выполнение: rsync -avh --delete ~/Documents/ user@server:/backup/Documents/
  4. Повторяйте ту же команду позже; будут переданы только изменения.

Осторожно

  • При использовании --delete неверный путь к источнику может привести к очистке места назначения; всегда сначала запускайте команду с -n.
  • Зеркало не является историей резервных копий: удаленные или поврежденные файлы также будут синхронизированы.

Источники

  1. rsync(1) manual page download.samba.org
  2. rsync project page rsync.samba.org

Последняя проверка: