[英]Scp command between 2 servers with 2 different .pem keys
我想使用scp和2个不同的.pem密钥将文件夹从服务器A传输到服务器B。
这是解决该问题的最佳方法吗,它将真正起作用吗?
scp -i ~/Documents/server1.pem -r root@server1.com:~/location/to/dir -i ~/Documents/server2.pem ~/location/to/copy/to
还是我必须输入:
scp -i ~/Documents/server1.pem -r root@server1.com:~/location/to/dir -i ~/Documents/server2.pem root@server2.com:~/location/to/copy/to
我只是不确定第二个位置是否需要输入主机或仅输入位置。 非常感谢您的帮助。
首先, scp
将仅接受一个-i
选项,因此您的任何命令均不起作用。
接下来,您不使用-3
选项。 这意味着传输将直接在server1和server2之间进行,而不会通过您的计算机。 在那种情况下,那将在server1上需要存储server2的证书。
这里已经给出了一种解决方案。 如果Server1上不能直接连接到服务器2,也看到这里的-3
选项。
另一个解决方案是使用两个ssh
进程,每个进程都有自己的-i
选项。 就像是:
ssh -i ~/Documents/server1.pem root@server1.com 'tar cz -C ~/location/to/dir .' \
| ssh -i ~/Documents/server2.pem root@server2.com 'tar xz -C ~/location/to/copy/to'
笔记:
scp
的-3
选项 tar x
之前添加mkdir -p
命令) tar x
命令中使用--no-same-owner
来使文件归root而不是其原始所有者拥有 创建一个~/scp_config
类的配置文件:
Host src
HostName server1.com
User root
CertificateFile %d/Documents/server1.pem
Host dest
HostName server2.com
User root
CertificateFile %d/Documents/server2.pem
然后跑
scp -3 -F ~/scp_config src:\~/location/to/dir dest:\~/location/to/copy/to
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.