一尘不染

Rsync到Amazon Ec2实例

linux

我有一个正在运行的EC2实例,并且能够通过SSH进入该实例。

但是,当我尝试rsync时,它给我错误Permission Densed(publickey)。

我正在使用的命令是:

rsync -avL --progress -e ssh -i ~/mykeypair.pem ~/Sites/my_site/* root@ec2-XX-XXX-XXX-XXX.us-west-2.compute.amazonaws.com:/var/www/html/

我也试过

rsync -avz ~/Sites/mysite/* -e "ssh -i ~/.ssh/id_rsa.pub" root@ec2-XX-XXX-XXX-XXX.us-west-2.compute.amazonaws.com:/var/www/html/

谢谢,


阅读 347

收藏
2020-06-03

共1个答案

一尘不染

我刚收到同样的错误。我一直能够使用以下命令:

ssh -i ~/path/mykeypair.pem \
ubuntu@ec2-XX-XXX-XXX-XXX.us-west-2.compute.amazonaws.com

但是,当使用更长的 rsync 结构时,似乎会导致错误。我最终将ssh语句括在引号中,并使用键的完整路径。在您的示例中:

rsync -avL --progress -e "ssh -i /path/to/mykeypair.pem" \
       ~/Sites/my_site/* \ 
       root@ec2-XX-XXX-XXX-XXX.us-west-2.compute.amazonaws.com:/var/www/html/

这似乎可以解决问题。

2020-06-03