我正在尝试将文件从我的服务器复制到另一台服务器,因此我使用以下命令:
scp root@myhost /home/direc/file.tar username@secondhost:/home/dir
我收到错误:
ssh:连接到主机 secondhost 端口 22 连接超时
我知道这可能是因为第二台主机上的 22 端口未打开
那么我该如何在第二台主机上指定端口 21 进行传输
答案1
尝试
scp -P 21 root@myhost /home/direc/file.tar username@secondhost:/home/dir
其中 -P 代表端口号。
答案2
我发现您的尝试和回应有两个缺陷。
1) scp 是一个安全 shell (ssh) 实用程序,用于在主机之间安全地复制文件。它使用 ssh 进行数据传输,使用相同的身份验证并提供与 ssh 相同的安全性(请参阅 scp 手册页)。默认情况下,ssh 使用端口 22。因此,除非您将目标服务器上的 ssh 默认端口号更改为 21,或者您尚未在接收服务器上安装并启动 ssh 服务器 (sshd),否则您无法使用 scp 复制文件。
2)示例中的正确命令行应为:
scp -P '*port running ssh on destination server*' /home/direc/file.tar username@remotehost:/home/dir
第一个步骤root@myhost
不是必需的,实际上会尝试将名为 file.tar root@myhost
(很可能不存在)的文件复制到目标服务器。您很可能会收到以下消息:
root@myhost: No such file or directory during the copy.