Использование rsyn c с s sh keygen - PullRequest
1 голос
/ 18 марта 2020

У меня есть сервер Debian, и я хочу создать cron для сохранения данных со своего сервера на удаленный жесткий диск, подключенный к моей ма c.

Итак, я сделал эту команду, которая работает правильно:

rsync -ah -progress -delete -e ssh xxxxxxx@1xx.1xx.1xx.1xx:/var/www/html/AccesBD/file /Volumes/USB-HDD

но мне нужно ввести пароль.

Я использовал s sh -keygen для создания файла id_rsa_lb (не id_rsa) и отправил его с

ssh-copy-id -i ~/.ssh/id_rsa_lb.pub 1xx.1xx.1xx.1xx

Команда ssh -i ~/.ssh/id_rsa_lb lxxxxxxxxxx@1xx.1xx.1xx.1xx выполняется правильно и не требует пароля. Это нормально.

Но когда я пытаюсь запустить rsyn c с помощью ssh / id_rsa_lb, у меня появляется ошибка:

rsync -ah -progress -delete -e ssh -i ~/.ssh/id_rsa_lb lxxxxxxxxx@1xx.1xx.1xx.1xx /var/opt/file /Volumes/USB-HDD

rsync: link_stat "/Users/yyyyy_yyyyy/.ssh/lxxxxxxxxx@1xx.1xx.1xx.1xx" failed: No such file or directory (2)
rsync: link_stat "/var/opt/base.sql" failed: No such file or directory (2)
rsync error: some files could not be transferred (code 23) at /BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-54/rsync/main.c(996) [sender=2.6.9]

Можете ли вы сказать мне, что не так?

Спасибо

1 Ответ

0 голосов
/ 18 марта 2020

Используйте кавычки, -e ожидает ровно один аргумент.

rsync user@host:src_path local_dest_path ... -e "ssh -i ~/.ssh/id_rsa_lb" 
...