当前位置: 首页 > news >正文

Windows主机、虚拟机Ubuntu、开发板,三者之间文件互传

以下内容源于日常学习的整理,欢迎交流。

下图是Windows主机、虚拟机Ubuntu、开发者三者之间文件互传的方式示意图:

注意,下面谈及的所有方式,都要求两者的IP地址处于同一网段,涉及到的软件资源见felm。 

一、Windows主机、虚拟机Ubuntu

可以通过Filezilla这个软件进行互传。

 

二、虚拟机Ubuntu、开发板

方法1:使用NFS方式传输文件

首先理解一下NFS的原理。简单地说,就是将远端操作系统(即服务端,这里指虚拟机Ubuntu)下的某个目录,挂接在本地操作系统(即客户端,这里指运行着操作系统的开发板)下的某个目录。这样一来,就可以通过本地目录访问远端目录的内容。

然后看一下设置方法:很简单,使用mount命令进行挂载时,-t 选项后面设置为 NFS 即可:

mount -t nfs -o nolock,vers=3 192.168.1.142:/home/book/nfs_rootfs      /mn
                             //虚拟机ubuntu的IP:将哪个目录挂载  //挂载到开发板哪个目录

比如上面的例子,mount 成功之后,开发板在/mnt 目录下读写文件时,实际上访问的就是Ubuntu 中的/home/book/nfs_rootfs 目录,所以开发板和 Ubuntu 之间通过NFS 可以很方便地共享文件。

方法2:使用TFTP服务传输文件

开发板上可以使用 tftp 命令与 Ubuntu 互传文件,不过需要在Ubuntu上先安装 TFTP 服务。

1、安装TFTP服务

(1)在 Ubuntu 中执行以下命令安装 TFTP 服务:

sudo apt-get install tftp-hpa tftpd-hpa  //在ubuntu上按照tftp服务

(2)创建 TFTP 服务器工作目录(你自己创建,下面只是一个举例):

mkdir -p /home/book/tftpboot
sudo chmod 777 /home/book/tftpboot
sudo vim /etc/default/tftpd-hpa

(3)修改TFTP服务配置文件 /etc/default/tftpd-hpa中,添加以下字段(将上面自己创建的工作目录写进配置文件中;以及其他一些配置,这配置啥意思先不管,照着学就好):

TFTP_DIRECTORY="/home/book/tftpboot"
TFTP_OPTIONS="-l -c -s"

(4)最后重启TFTP服务(该命令和重启网络命令好像,把tftpd-hpa改为network就好):

sudo service tftpd-hpa restart

(5)查看 tftp 服务是否在后台运行:

ps -aux | grep “tftp”

2、开发板从Ubuntu下载文件

(1)把待下载文件,放到Ubuntu中TFTP服务器工作目录中,比如123.txt。

(2)使用以下命令,从Ubuntu中下载文件:

tftp -g -r    123.txt             192.168.1.142
              //要下载什么文件     //Ubuntu桥接方式下的IP地址

3、开发板上传文件到Ubuntu

使用以下命令,将开发板当前目录下的345.txt文件,上传到Ubuntu的TFTP服务器工作目录中:

tftp -p -l    ./345.txt                          192.168.1.142
              //要将开发板的哪个文件上传到Ubuntu   //Ubuntu桥接方式下的IP地址

4、tftp命令简介

更多介绍,见 Linux tftp 命令 | 菜鸟教程。 

tftp命令是Linux系统中的一个用于进行文件传输的工具,它是基于UDP协议的、简单文件传输协议(TFTP)的客户端命令行工具。

tftp命令的主要作用是在网络中传输文件。它可以通过TFTP协议与远程主机进行通信,将文件从本地主机传输到远程主机,或者从远程主机下载文件到本地主机。比如可以将固件、配置文件、日志文件等传输到网络设备,或者从网络设备上下载这些文件进行分析和备份。

与其他文件传输协议(如FTP)相比,TFTP协议更加简单和轻量级,适用于在局域网或者本地网络中进行快速的、小体积的文件传输。

在使用tftp命令时,需要注意确保tftp服务器已正确配置、网络连接正常、文件权限和路径设置正确、注意文件名的大小写、设置传输模式和超时时间、使用合适的命令选项,并注意安全性。

三、Windows主机、开发板

这两者之间也可以使用TFTP服务传输文件,需要使用到一款软件:tftpd64。

如下图所示,在Windows主机下运行tftpd64,设置好TFTP服务的工作目录(以后开发板从这个目录中下载文件,或者上传文件到这个目录),选择有线网卡(桥接网卡)的IP地址。

如果开发板想下载Windows主机中的文件(比如123.txt),先将文件放入Windows主机TFTP服务的工作目录下,然后使用下面命令:

tftp -g -r    123.txt             192.168.1.10
              //要下载什么文件     //Windows主机有线网卡的IP地址

如果开发板想上传文件(比如345.txt)到Windows主机,则采用下面命令:

tftp -p -l    ./345.txt                          192.168.1.142
              //将开发板哪个文件上传到Windows    //Windows有线网卡的IP地址

相关文章:

  • 通过NodeRED三步完成数据上报|AIoTedge最佳实践
  • MyBatis XMLMapperBuilder 是如何将 SQL 语句解析成可执行的对象? 如何将结果映射规则解析成对应的处理器?
  • vue3中用v-for循环出三个元素,绑定元素的ref并拿到这三个元素的ref属性
  • YOLO11结构
  • 深度学习框架PyTorch——从入门到精通(2)张量
  • 项目中pnpm版本和全局pnpm版本不一致
  • Vue:Vue2和Vue3创建项目的几种常用方式以及区别
  • Canary
  • 小程序API —— 52 小程序界面交互 - 模态对话框 - 消息对话框
  • 15 文件操作
  • 【初学者】解释器和脚本各是什么?有什么区别与联系?
  • Agent系列——Agent框架调研
  • 再学:函数可见性、特殊函数、修饰符
  • Python IP解析器 ip2region使用
  • Hessian矩阵详解与应用
  • VBA常见的知识都有哪些,让AI编写的VBA经常 报错,所以VBA的基础还是要学习的
  • Java 代理模式详解
  • 嵌入式GPRS协议面试题及参考答案
  • 自动驾驶背后的数学:特征提取中的线性变换与非线性激活
  • GenICam GenTL 标准 ver1.5(1)GenICam简介与框架
  • 咖啡戏剧节举办第五年,上生新所“无店不咖啡,空间皆可戏”
  • 体坛联播|双杀阿森纳,巴黎晋级欧冠决赛对阵国际米兰
  • 民生访谈|摆摊设点、公园搭帐篷、行道树飘絮,管理难题怎么解?
  • 重磅金融政策密集发布!一文梳理这场国新办发布会
  • 碧桂园服务:拟向杨惠妍全资持有的公司提供10亿元贷款,借款将转借给碧桂园用作保交楼
  • 央行:上市公司回购增持股票自有资金比例要求从30%下调至10%