Shell脚本通过sudo su访问将文件从linux盒复制到远程主机

时间:2014-10-10 19:06:33

标签: linux shell unix ssh

我必须从linux框中复制一个文件,我使用su - username以不同的用户身份登录。

在远程服务器上,我使用我的unix id登录,以sudo su - username切换到另一个用户。在这里,我输入我的unixid密码并成为用户(因为我被添加到sudoers列表中)。

有没有办法使用scp将文件复制到远程主机而无需输入密码?

请帮忙

1 个答案:

答案 0 :(得分:0)

您应该使用RSA密钥。您可以使用ssh-keygen命令生成ssh-rsa密钥。只需运行该命令,它将指导您完成整个过程。该命令将创建两个文件,一个公钥和一个私钥。应将公钥文件的内容(>>)添加到〜/ .ssh / authorized_keys文件中。现在应该将私钥文件复制到另一台机器,您可以在其中使用以下形式的scp命令:

$ scp -i /the/private/key/file otheruser@otherhost:/file/to/copy /destination/path

$ scp -i /the/private/key/file /file/to/copy otheruser@otherhost:/destination/path 

请注意,必须在ssh的配置中启用publickey身份验证。

我希望这会有所帮助