以下内容源于朱有鹏嵌入式课程的学习,如有侵权,请告知删除。

1、什么是nfs?

(1)nfs(网络文件系统)是一种网络通讯协议,由服务器和客户端构成。

(2)nfs的作用

  • 利用nfs协议可以做出很多直接性应用,但这里使用nfs主要是做rootfs挂载。
  • 开发板中运行kernel作nfs客户端(在配置时要配置成支持nfs客户端)。
  • 虚拟机ubuntu中搭建nfs服务器(指定的共享目录由bootargs这个环境变量中的nfsroot路径指定)。
  • 在虚拟机ubuntu的nfs服务器的NFS共享目录下,导入文件夹形式的rootfs目录,在客户端中挂载这个文件夹形式的rootfs,进而启动系统。

2、在虚拟机上搭建nfs服务器

(1)搭建方法见环境搭建文档;

(2)挂载的理解

  • 被挂载的目录,即要访问的目录,比如/root/rootfs;
  • 挂载到某目录(挂载点),该目录就是一个小窗口,通过该窗口可以访问被挂载的目录的内容。
  • 比如挂载到/opt,则可以通过opt访问/root/roots的内容。
  • 用完之后一般要卸载:umount  /opt

3、配置内核以支持nfs作为rootfs

(1)设置nfs启动方式的bootargs

  • 修改bootargs这个环境变量(注意具体的内容可能不同)。
  • 参数含义见博文http://blog.csdn.net/oqqhutu12345678/article/details/78492575。
set bootargs root=/dev/nfs nfsroot=192.168.1.141:/root/rootfs/ ip=192.168.1.20:192.168.1.141:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC2,115200 
  • 此时如果直接挂载运行,会提示错误如下,导致重新启动,因为没有配置内核以支持NFS启动方式。


(2)在内核配置阶段,即menuconfig中配置支持nfs启动方式

(3)在uboot中设置环境变量

  • set bootcmd ‘tftp 30008000 zImage;bootm 30008000’;修改完后记得save。

(4)重新启动uboot,就会到tftp服务器中下载内核,然后再到nfs服务器中下载rootfs。

  • 如果rootfs是可用的,那么就会启动成功;
  • 如果rootfs是不可用的,那么会提示下面的错误。

4、总结

(1)nfs方式启动相当于开发板上的内核远程挂载主机上的rootfs(根文件系统、内核在主机上,而不是像以前那样先烧录在开发板上)

(2)nfs方式启动不用制作rootfs镜像;

(3)nfs方式不适合真正的产品,一般作为产品开发阶段调试使用。

NFS方式挂载rootfs的设置方法相关推荐

  1. Android NFS文件系统挂载遇到的问题解决方法

    在网上他人博客中方法都大同小异,但是却无法解决我遇到的问题. 我随意挑选一个网友的方法http://blog.csdn.net/zjg555543/article/details/7792984 当然 ...

  2. mini2440 uboot使用nfs方式引导内核,文件系统

    mini2440 uboot使用nfs方式引导内核,文件系统 成于坚持,败于止步 看了一段时间的u-boot了,到今天才真正完全实现u-boot引导内核和文件系统,顺利开机,在此记录完整过程 1.首先 ...

  3. nfs自动挂载报错及解决方法

    问题描述: 之前做过一些nfs挂载的测试,证明挂载是没问题的. 网络环境: 服务器:10.210.1.145(默认网关10.210.1.129) 客户端:10.110.3.49(默认网关10.110. ...

  4. 群辉挂载linux nfs,Debian 9 挂载访问已设置的群晖NFS共享文件目录

    说明 博主先后尝试了 webdav.Samba方案后,最后毅然决然选择NFS的方案,通过挂载群晖的NFS共享文件目录作为Jellyfin的媒体库,媒体播放通常单个文件都比较大,而webdav在读取过程 ...

  5. 如何更改html的默认应用,win10更改默认打开程序设置方法_win10怎么更改应用默认打开方式-win7之家...

    在使用win10系统过程中,对于一些需要借助工具才能够打开的文件,我们每次在打开之前都会有一个选择打开的程序,对此有些用户就想要将其设置成默认打开方式,以此来较少一些不必要的选择,那么win10怎么更 ...

  6. 计算机桌面图标的排列,win7电脑桌面图标排列方式如何设置,电脑桌面图标排列方式设置方法...

    最近有位win7系统用户反映,自己桌面上的程序图标非常多,看着很乱,所以想要将它们排列整齐一些,但是却不知道怎么操作,那么win7电脑桌面图标排列方式怎么设置呢?今天为大家分享win7电脑桌面图标排列 ...

  7. virtualbox四种网络连接方式及其设置方法

    VirtualBox中有4种网络连接方式: ①NAT ②Bridged Adapter ③Internal ④Host-only Adapte 废话不多说,直接上图! (注:此图直接取至Finalbu ...

  8. nfs只能挂载为nobody的解决方法

    nfs只能挂载为nobody的解决方法 参考文章: (1)nfs只能挂载为nobody的解决方法 (2)https://www.cnblogs.com/xingyunfashi/p/8059910.h ...

  9. 请用两种java方式显示今天的日期_日期时间显示格式的两种设置方法

    在国内行业的各类报表中日期和时间可以算是最长见的一个数据单位了,几乎所有的报表都可以和时间拉上关系,而且报表浏览者也大都要求报表中有时间日期,这样才能让报表信息更清晰明了.但是时间和日期在数据库中的存 ...

最新文章

  1. 数据库连接报错之IO异常(The Network Adapter could not establish the connection)
  2. python面试常见问题-Python面试常见问题,涉及Python各个方面
  3. 深入探究Python中的字典容器
  4. 【Python CheckiO 题解】Right to Left
  5. uva 133解题报告
  6. 台式电脑耳机插孔在哪_吉林戴尔电脑音箱维修app,查看详情_曹操闪修
  7. css h5移动端背景铺满
  8. linux 内核 82540网卡,Linux网卡as4.2 编译安装及配置准备
  9. 小米11 Pro系列细节再曝光:大杯大升级!
  10. java guava_java项目中使用guava的工具包的心得
  11. leetcode container-with-most-water(medium) /java
  12. 关于php开发中用户请求数据的安全问题的一点想法
  13. python量化需要什么基础_真格量化入门课程——②真格量化Python策略编写思路
  14. python 数独_python 实现 数独 解法 (穷举法)
  15. [QCTF2018]Xman-RSA
  16. mysql sql loader_Data Loader
  17. 如何写一个自动重复发消息的脚本,聪哥手把手教你(适配任何可发消息的app),亲测有效
  18. 李开复:点子太多的聪明人不适合创业
  19. Android 实现系统打印机打印图片,文本,以及二维码生成与解析
  20. 24路舵机控制板板使用说明

热门文章

  1. Mysql 忘记密码重置教程
  2. BZOJ.2741.[FOTILE模拟赛]L(分块 可持久化Trie)
  3. display:flex
  4. 对AutoIt中控件和窗口的理解
  5. 记GMIC 2014
  6. [18]Debian Linux Install GNU GCC Compiler and Development Environment
  7. Entity Framework 4.1 DbContext使用记之三——如何玩转实体的属性值?
  8. mingw + msys 上编译 ffmpeg
  9. [译]JavaScript 究竟是如何工作的?(第一部分)
  10. Spring Cloud Edgware新特性之八:Zuul回退的改进