我有一个包含 4 台机器的集群。其中一台是集群管理器。当集群管理器启动备份时,每个从属集群都会在其自己的文件系统中创建集群备份文件。
集群管理器完成备份过程后,我必须将集群备份从每个从属集群复制到另一台远程存储机器。从属集群和存储机器的 ssh 端口不同。
我正在考虑通过集群管理器的安全复制将文件从远程集群复制到远程存储机器,例如:
scp cluster1.com:/backup/files storage.com:/backup/cluster1
scp cluster2.com:/backup/files storage.com:/backup/cluster2
scp cluster3.com:/backup/files storage.com:/backup/cluster3
...
正如我所说,集群和存储机器的 ssh 端口是不同的。但scp
命令只有一个port
关键字参数。有没有办法用scp
命令设置集群和存储服务器端口?
答案1
使用ssh_config
,它允许您为 中使用的主机创建别名scp
并指定单独的端口。简而言之,填写您的~/.ssh/config
或/etc/ssh/ssh_config
:
Host host1
Hostname host
Port 2222
Host host2
Hostname host
Port 2223
然后你可以简单地使用
scp host1:/backup/files host2:/backup/cluster1
您还可以在配置中存储其他信息,例如用户、身份文件等。