预备知识:

NFS是什么?

NFS:Network File System(网络文件系统),NFS只是一种文件系统,本身并没有传输功能,是基于RPC协议实现的,为C/S架构。也就是说,NFS也只是文件系统而已,与jffs2,yaffs,ext4等是一类东西。但是NFS的特殊之处在于,它可以通过网络来挂载,而不用烧写到设备上。这就跟网吧里使用PXE启动来搭建无盘系统一样:每台电脑并没有安装硬盘,而是直接通过PXE启动服务器上的系统,看起来每台电脑都有硬盘,其实都是挂载服务器上的硬盘。

NFS怎么用?

前边已经介绍过,NFS是C/S架构,也就是说,使用NFS需要搭建服务器和客户端。客户端很简单,自带的uboot已经添加了对NFS客户端的支持,我们只需要管NFS服务器。这个服务器其实跟TFTP、Samba服务器、Ftp服务器也是一类的东西,直接在Ubuntu上使用命令安装即可,

前提条件:

1. 开发板上要烧写好文件系统

2. 能正常开机进入Linux系统

3.uboot中启动参数类似这种  bootargs=noinitrd

root=/dev/mtdblock3

init=/linuxrc

console=ttySAC0

接着按如下步骤执行

1.在ubuntu上搭建(下载)、配置和重启NFS服务器

安装: sudo apt-get install nfs-kernel-server

配置 :sudo vi /etc/exports 在文件里添加

就是在文件里添加了如下语句

/work/nfs               *(rw,sync,no_root_squash)

/var/lib/tftpboot       *(rw,sync,no_root_squash)

或者下面的语句

/work/        *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
/work/rootfs  *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
/work/nfs_root  *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
重启NFS服务器

sudo /etc/init.d/nfs-kernel-server restart

简单解释各个参数的意义:

/work/nfs   :允许客户端挂载的目录,可添加任意多个,如果不设置,服务器将不允许客户端挂载。

*               :允许所有IP的主机挂载该目录

括号内的    :一些权限设置,比如是否能够读写(可百度,更详尽)

现在NFS服务器就可以用了。

2 查看开发板和Ubuntu的IP,设置开发板IP并ping通NFS服务器

3.把你想拷贝到开发板上的文件都复制到刚才设置的目录里,例如拷贝到 /work/nfs,然后在开发板上执行挂载命令

mount   -t    nfs    -o   nolock,vers=2    192.168.1.19:/work/nfs    /mnt

解释一下:

mount     :挂载命令

nfs          :使用的协议

nolock     :不阻塞

vers        : 使用的NFS版本号

IP           : NFS服务器的IP(NFS服务器运行在哪个系统上,就是哪个系统的IP)

/work/nfs: 要挂载的目录(Ubuntu的目录)

/mnt       : 要挂载到的目录(开发板上的目录,注意挂载成功后,/mnt下原有数据将会被隐藏,无法找到)

现在进入开发板上的/mnt目录,用ls命令 就可以看到Ubuntu上要传输的文件了

交叉编译环境中虚拟机ubuntu向开发板传送文件的方法相关推荐

  1. ubuntu 虚拟机 串口 socket_上篇 | 虚拟机Ubuntu向开发板AMR传送文件

    让技术·支撑梦想 点击上方蓝字可以关注我们哦 首先把Ubuntu向开发板发送文件的流程做一下笔记,下一篇笔记就记录开发板如何接受文件.... 上一篇笔记:Makefile文件的编写规则及实例 有很多小 ...

  2. 虚拟机Ubuntu与开发板的局域网设置

    在开始之前,先要关闭电脑的网络防火墙. 首先在虚拟机->设置->网络适配器中,把Ubuntu网络设置为桥接模式.再到编辑->虚拟网络编辑器,中,选择桥接模式,并选择电脑对应的网卡. ...

  3. 虚拟机ubuntu和开发板UDP Socket通信实例

    服务器端的步骤如下: 1. socket:      建立一个socket 2. bind:          将这个socket绑定在某个端口上(AF_INET) 3. recvfrom:  如果没 ...

  4. ubuntu交叉编译Qt-5库并移植ARM开发板

    前言:本文将介绍Qt5源码方式的交叉编译及安装 下载源码包:qt-everywhere-src-5.12.8.tar.xz 官网下载网址:Index of / 依次选择: [official_rele ...

  5. 嵌入式 Linux 入门 环境篇(三、开发板和 PC 的网络互通)

    嵌入式 Linux入门 环境篇第三课,开发板与PC的网络配置, 我们要实现 windows.ubuntu 和开发板三者的互通. ...... by 矜辰所致 前言 在环境篇前面的文章我们通过终端工具使 ...

  6. Linux开发环境配置--正点原子阿尔法开发板

    Linux开发环境配置–正点原子阿尔法开发板 文章目录 Linux开发环境配置--正点原子阿尔法开发板 1.网络环境设置 1.1添加网络适配器 1.2虚拟网络编辑器设置 1.3Ubuntu和Windo ...

  7. ubuntu 和开发板文件挂载

    ubuntu 和开发板文件挂载 1. ubuntu使用NAT模式进行挂载 ​ 在VMware 中网络适配器选择NAT模式 进入ubuntu界面,打开终端,查看ip,输入一下指令: ifconfig 记 ...

  8. 配置Ubuntu和开发板同一网段

    文章目录 一.查看网络信息 1.开发板网络信息 2.Ubuntu网络信息 二.修改为同一网段 1.修改开发板的IP地址 2.修改Ubuntu的IP地址 3.测试 三.实现TFTP文件传输 同一网段的概 ...

  9. 使用普中科技ESV2.0开发板控制步进电机

    使用普中科技ESV2.0开发板驱动步进电机 文章目录 使用普中科技ESV2.0开发板驱动步进电机 前言 一.步进电机的驱动原理 工作原理 二.如何让步进电机转起来 相数 驱动方法 注意图中接线顺序,不 ...

最新文章

  1. eclipse 中配置maven环境
  2. R语言ggplot2可视化分面图(faceting)、可视化分面条形图(facet_wrap bar plot)、使用strip.text函数自定义分面图每个分面标题条带strip的大小(cutomi
  3. java native关键字(java本地方法)
  4. matlab 功率谱密度 汉宁窗_[振动与测试 2] 什么是PSD(功率谱密度)
  5. synchronized(九)
  6. 【linux】linux 查找 或者 搜索 文件 find
  7. struts2 mysql配置文件路径_Struts2(四)Struts2配置文件的配置
  8. (一) Qt Model/View 的简单说明
  9. html让后端删除数据库,Chrome在请求之间删除WebSQL数据库
  10. CLR 4.0有哪些新东西? -- 状态错乱异常 Corrupted state Exception
  11. springmvc系列一 之配置介绍(包含官网doc)
  12. 对抗神经网络(Adversarial Nets)的介绍[1]
  13. xsmax进入dfu模式_iPhone XR/XS/XS Max 何如进入恢复模式或 DFU 模式?
  14. NVIDIA显卡型号有哪些?怎么知道自己电脑的型号?
  15. SEO入门知识1:网站改版后怎么做SEO
  16. PHP+ajaxfileupload 实现用户头像上传
  17. windows查看tomcat版本信息
  18. 架构道术-从心流视角看费曼学习法
  19. 排列组合解决方格走法_方方格子的便利:拆分数据到多行
  20. 用python解“厘米换算英尺英寸”问题

热门文章

  1. Arm_imx 8QXP实践,ARM A系列
  2. 大数据搜索的互联网思维
  3. 入侵XXX学校教务管理系统过程记录
  4. underscore中的partial
  5. Unity完美的UI绘画工具
  6. QT5.9实现一个视频播放器播放 暂停进度条
  7. python 高级技巧
  8. Game boy模拟器(6):输入
  9. 几何运算是计算机的基本功能,渐开线圆柱齿轮几何参数计算的计算机辅助设计系统...
  10. 胶囊网络的理解:动态路由与聚类