复制文件
将本地文件拷贝到远程
scp 文件名 用户名@计算机IP或者计算机名称:远程路径
从远程将文件拷回本地
scp 用户名@计算机IP或者计算机名称:文件名 本地路径
复制目录
将本地目录拷贝到远程
scp -r 目录名 用户名@计算机IP或者计算机名称:远程路径
从远程将目录拷回本地
scp -r 用户名@计算机IP或者计算机名称:目录名 本地路径
默认端口22,如果需要更改加上-P XXX,如
scp -P XXX -r 用户名@计算机IP或者计算机名称:目录名 本地路径
首次传输会出现以下提示
The authenticity of host 'XXX' can't be established.
ECDSA key fingerprint is XX:XXX.
Are you sure you want to continue connecting“
输入yes即可,这个提示是因为你的 SSH 客户端在第一次连接到一台新主机时,会检查主机的公钥指纹。由于这是你第一次连接到,它无法确认该主机的真实性。
如果你确认这个 IP 地址是你想连接的主机,并且没有安全风险,可以输入 yes 来继续连接。这会将该主机的公钥添加到你的 ~/.ssh/known_hosts 文件中,以后再连接时就不会再出现这个提示了。
如果你不确定这个主机的安全性,建议检查该主机的公钥,以确保没有安全隐患。
如果报错Permission denied
一:密码错了
二:端口错了
三:两台机之间用su账号执行scp会涉及到root远程登录的权限,默认是没有打开的。
sudo vim /etc/ssh/sshd_config
把PermitRootLogin no中的no改成yes,如果原来没有这行或被注释掉,就直接加上或反注释。
以及PasswordAuthentication no 改为PasswordAuthentication yes
退出编辑,然后重启ssh服务
/etc/init.d/sshd restart
如果返回“bash: /etc/init.d/sshd: No such file or directory”错误提示,则用以下命令重启服务:
systemctl restart sshd.service
注意:两台服务器都要修改该配置才能双向生效。
参考链接:
两台Linux系统之间传输文件的几种方法_scp 拷贝目录-CSDN博客
Linux下scp报Permission denied错误的解决方法 - Clotho_Lee - 博客园 (cnblogs.com)
Linux的远程传输文件scp及出现Permission denied (publickey).lost connection问题解决方法_permission denied (publickey). lost connection-CSDN博客