Альтернатива "wget ​​--mirror"

Я ищу альтернативу этому: не нужно использовать FTP, но он должен обеспечивать ту же функциональность, что и опция "--mirror" в wget, когда он загружает только новые и измененные файлы.

wget --mirror --preserve-permissions --directory-prefix=/hdd2/website-backups --exclude-directories=special,stats --ftp-user=user --ftp-password=pass ftp://ftp.domain.com

В настоящее время вышеуказанная команда показывает, как резервное копирование удаленного сайта каждые несколько дней с помощью задания cron на домашнем сервере. Удаленный сайт переехал на новый хост с доступным SSH, и у меня уже есть открытый / закрытый ключи для SSH. Теперь я хотел бы использовать что-то более безопасное, чем wget / ftp для автоматического резервного копирования, но так как на этом сайте много файлов изображений, большинство из которых не изменится, я не очень хочу заархивировать весь documentRoot и скачать его каждый раз.

1 ответ

Решение

rsync - стандартная утилита для этого:

rsync -avz -e ssh source/ user@destServer:/dest/
  • Для архива, хранит разрешения, печатает штампы и т. д.
  • v для многословия
  • e ssh, используйте поверх ssh
  • z для сжатия, если вы этого хотите. Он не будет пытаться повторно сжать архивные (zip) файлы.

Обычно rsync поставляется с дистрибутивами Linux. Это также отвечает вашему требованию не передавать вещи, которые не изменились.

Другие вопросы по тегам