scp指令的使用,及SCP 无法连接到目标设备的解决办法

scp指令的使用,及SCP 无法连接到目标设备的解决办法

SCP指令

有时候我们需要从另一台linux设备上获得或发送文件,尤其是进行交叉编译时,向开发板传送文件,一个较为方便的的方法是使用SCP指令.

可以通过类似如下指令进行文件传输:

scp a.c xiaoming@192.168.888.888:/home/xiaoming/ccc

将当前目录中的a.c文件,发送到IP为192.168.888.888的用户xiaoming的/home/xiaoming/ccc文件夹下

scp xiaoming@192.168.888.888:/home/xiaoming/ccc.b.c .

将IP为192.168.888.888的用户xiaoming的/home/xiaoming/ccc文件夹下的b.c文件下载到当前文件夹

安装SSH

ssh -V

//查看是否安装了SSH

如果安装了SSH会有类似下方的输出

OpenSSH_8.2p1 Ubuntu-4ubuntu0.9, OpenSSL 1.1.1f 31 Mar 2020

如果未安装,可通过如下命令安装并开启SSH服务

sudo apt-get install openssh-server

//ubantu系统,其他系统自行百度一下

sudo systemctl start ssh

//启动SSH服务

sudo systemctl enable ssh

//将SSH添加为开机自启

SCP报错及解决办法

如果出现错误.

1.首先检查目标设备名以及IP地址是否错误

2.确保自己设备与目标设备都安装并开启了SSH服务

3.如果出现类似以下的错误

The authenticity of host '192.168.888.888 (192.168.888.188)' can't be established.

ECDSA key fingerprint is SHA256:QMJDcwgfmEPrqVmAp/NrBqXh2r02DKEc2gtcM7vmL2o.

Are you sure you want to continue connecting (yes/no)?

Host key verification failed.

lost connection

可能的原因是本机中没有目标设备的SSH密钥(正常情况下第一次连接应该自动生成)

可以通过以下指令强行连接目标设备

ssh -o StrictHostKeyChecking=no xiaoming@192.168.888.888

这将会直接进入目标服务器中.输入exit可以退出.

exit

//退出目标服务器

此时scp指令就可以成功使用了.此时如果显示如下错误

Permission denied

//文件操作权限不足

需要目标设备更改文件权限,将权限改为所有用户可读可写可执行

chmod 777 /home/xiaoming/ccc

//将ccc文件夹的权限设置为所有人可读可写可执行

到这里scp指令应该就可以正常使用了,在linux设备间交互文件十分方便

相关推荐

年轻女孩不愿进工厂,宁愿做足浴技师,这是为什么?
下载旧版本彩票365软件

年轻女孩不愿进工厂,宁愿做足浴技师,这是为什么?

📅 09-19 👁️ 7720
清明节可以干什么事情
日博365bet手机版

清明节可以干什么事情

📅 07-18 👁️ 479