Я хочу сделать резервную копию каталога с моего производственного сервера на резервный сервер с помощью rsync.
Мое текущее решение:
Моя проблема с этим решением: недостаточно места для создания tar-файла + для создания tar-файла требуется много ресурсов. Это должно как можно меньше влиять на ресурсы рабочего сервера.
Я хотел бы отправить файлы в tar-файл на удаленном сервере. Я просто мог бы отправить файлы и поместить их на резервный сервер, но, с моей точки зрения, это не было бы хорошим решением.
Вы можете использовать комбинацию каналов и STDOUT для отправки tar-файла по сети на удаленный сервер.
tar zcvf - /your/directory | ssh -i private.key backup-user@backupserver "cat > /backup/file.tgz"
Символ «-» отправляет tar в STDOUT, который передается по конвейеру ssh
и содержимое, записанное в обычный файл, используя cat
.
Вам нужно будет использовать ssh
с файлом закрытого ключа для «беспарольной» аутентификации.
Это не использует rsync
но получит tar-файл на удаленный сервер.
Ссылка: https://stackoverflow.com/questions/8045479/whats-the-magic-of-a-dash-in-command-line-parameters