Ubuntu18虚拟机通过SSH连接嵌入式板&通过rcp传输文件到指定目录

操作步骤为:

  • 1.Ubuntu虚拟连接入局域网
    1. 虚拟机安装ssh
    1. 通过ssh连接网关,以rcp方式传输文件
    1. 编写脚本,单次传输多个文件和文件夹

1. Ubuntu连接局域网

  • 本地局域网网段是192.168.8.x网段,需要将Ubuntu设置静态IP到这个网段内。为此要进行两个操作
    1)VM添加一个网卡
    在这里插入图片描述
    在这里插入图片描述
    设置网卡2为桥接模式,直接连接物理网络,这里就需要设置网卡2的静态IP了
    2)编辑/etc/network/interfaces 设置静态IP
    可以先输入 ifconfig,查看当前网卡情况,因为新加的网卡默认是没有IP的,需要手动设置IP;
    输入指令
vim /etc/network/interfaces

添加内容:

auto ens36
iface ens36 inet static
address 192.168.8.157
netmask 255.255.255.0
gateway 192.168.8.1

注:我的网卡号是ens36,对照自己的网卡进行配置
然后测试一下ping 192.168.8.1 默认网关是否能够通,如果能够通说明已经加入了局域网
在局域网内的设备IP是192.168.2.30,我要给我的网卡加一个IP,方式为:

ifconfig ens36:1 192.168.2.105

添加了一个2网段的IP
然后测试一下ping 192.168.2.30
如果正常连接的话是能够ping通的

2 安装ssh服务

sudo apt-get install openssh
# Ubuntu18如果openssh不能安装,可以安装 ssh
sudo apt-get install openssh-server

再执行:

ssh root@192.168.2.30

RCP可以将本机的文件复制到指定位置,方式:
rcp /home/led root@192.168.2.30:/home/lcy
rcp 选项 文件 远程位置
-r 选项 如果原文件是目录,复制该目录中的每个字树

3.测试单个文件的操作

rcp -r config/ root@192.168.2.30:/etc/init.d/

这样会将config目录以及其下的文件树复制到远程指定位置“/etc/init.d/”
在复制之后查看远程机器上面是否存在这些文件
如果正常发送的话,提示内容为:

rc.local                                      100% 1924   570.1KB/s   00:00    

4 脚本执行单次传输多个

#!/bin/bash
rcp -r /home/lcy/work/firmware_1.29.2/ root@192.168.2.30:/home/root/
rcp  /home/lcy/work/firmware_1.29.2/change.sh root@192.168.2.30:/home/root/

rcp  /home/lcy/work/config/rc.local  root@192.168.2.30:/etc/init.d/

rcp  /home/lcy/work/config/FirmwareCfg.txt root@192.168.2.30:/opt/
rcp  /home/lcy/work/config/setData.php root@192.168.2.30:/var/www/html/php2.0/

rcp  /home/lcy/work/config/system.js root@192.168.2.30:/var/www/html/js/
rcp  /home/lcy/work/config/ComCfg.txt root@192.168.2.30:/opt/
rcp  /home/lcy/work/config/frame_config.json root@192.168.2.30:/opt/

这样的话可以比较简单的一次性传送多个文件到不同位置

5 多次连接SSH的问题:

如果在连接设备1后,再以SSH方式连接设备2,而设备1和设备2的IP都是192.168.2.30,就会报错
在这里插入图片描述
可以按照提示的输入:

ssh-keygen -f "/home/lcy/.ssh/known_hosts" -R "192.168.2.30"

然后就出现:

lcy@ubuntu:~$ ssh-keygen -f "/home/lcy/.ssh/known_hosts" -R "192.168.2.30"
# Host 192.168.2.30 found: line 2
/home/lcy/.ssh/known_hosts updated.
Original contents retained as /home/lcy/.ssh/known_hosts.old

然后就可以正常连接了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值