我承认自己是菜鸟,没什么网络知识就来搞挂载nfs网络文件系统,花费了5天的时间才把nfs网络文件系统成功挂载在A8板子上,实现了A8板子和虚拟机的文件共享。分享一下个人经验:

以下是基于nfs已经完成安装来说

板子接线问题:我是把板子和电脑都接到同一个路由器上的,保证在同一个网段,我的网关是192.168.0.1,故我的电脑、虚拟机、板子的网关也是它,我的电脑ip地址是192.168.0.111、虚拟机ip为192.168.0.121,板子ip为192.168.0.120,发现上面就是192.168.0.*。哈哈,他们就在同一个网段了。

命令的解释

ifconfig  (在虚拟机上实际是查看网络信息比如ip地址,网关。在window下可以用ipconfig查看)

如何启动 NFS 文件系统

步骤一、PC 虚拟机端的设置

①  设置虚拟机 IP 地址

[root@localhost rootfs]#  ifconfig eth0 192.168.0.121

这个说得通俗点就是修改虚拟机的ip地址

②  启动 NFS 服务器

[root@localhost rootfs]#  /etc/init.d/nfs restart

③  设置 NFS 共享目录

[root@localhost rootfs]#  vim /etc/exports

/*  将下面内容写入/etc/exports 文件  */

/rootfs  *(rw,sync,no_root_squash)

注意:rootfs是你所共享的nfs文件系统的根目录相当于root,文件夹里面有什么你懂的,里面有什么bin、sbin、usr等等,不是你的镜像文件。别理解错,我就是被这个问题拖了好多天的,网峰的该文件在:源代码/移植部分/移植后代码/根文件系统/

就是这个文件:

rw:是读/写权限,只读权限为ro

Sync:数据同步写入内存或硬盘,也可以使用async,此时数据会暂存内存,不写入硬盘。

no_root_squash:NFS服务器共享目录的属性,如果用户是root,那么对于这个共享目录就有root的权限。

步骤二、选择【1】下载 u-boot 到 NAND FLASH

步骤三、选择【2】下载 kernel 到 NAND FLASH

Ps:如果你已经把yaffs2文件系统下载进去了,如果下面设置好了,在里面也没有影响的。

完成上面二个烧写后,按 q 进入 u-boot 命令行。输入printenv:可以查看你当前的环境变量

步骤四、进入 u-boot 环境变量设置 IP

①  设置开发板 IP

[Webee_210]# set ipaddr 192.168.0.120

②  设置 PC 端 IP(也是在 u-boot 命令行这里设置)

[Webee_210]# set serverip  192.168.0.121  //设置虚拟机ip作为服务器

[Webee_210]# set gatewayip  192.168.0.1    //设置A8的网关

③  设置 NFS 启动参数

[Webee_210]#  setenv  bootargs  noinitrd  root=/dev/nfs

nfsroot=192.168.0.121:/webee,tcp

ip=192.168.0.120:192.168.0.121:192.168.0.1:255.255.255.0::eth0:off  init=linuxrc

console=ttySAC0,115200

解释一下各个参数什么意思

root=/dev/nfs,  //表示用挂载的nfs文件系统

nfsroot=192.168.0.121:/webee,tcp  //表示虚拟机IP:虚拟机要共享的目录

ip=192.168.0.120:192.168.0.121:192.168.0.1:255.255.255.0::eth0:off    //表示板子IP:虚拟机IP(服务器):网关IP:掩码::eth0:off

④  将刚设置的参数写入 NAND FLASH

[Webee_210]# saveenv

此时可以用printenv查看参数

可以看到,上面很多环境变量是我们自己设置的 。

到这个步骤你可以用电脑、虚拟机、板子相互ping会发现下面情况,这是正常的:

电脑      ping  板子   不通

虚拟机      ping  板子   不通

板子       ping  电脑    通

板子       ping  虚拟机   通

虚拟机      ping  电脑    通

电脑      ping  虚拟机   通

贴一张图片

⑤  将 Linux 内核从 NAND FLASH 读入内存,然后启动内核。

[Webee_210]# nand read 0x20007fc0 0x100000 0x500000

⑥  NFS 启动内核

[Webee_210]# bootm 0x20007fc0

启动完后

上面可以看到VFS:mount root (nfs filesystem)ondevice 0:9.表示nfs文件系统已成功挂载。

到这个步骤你可以用电脑、虚拟机、板子相互ping会发现下面情况,这是正常的:

电脑      ping  板子   通

虚拟机      ping  板子   通

板子       ping  电脑    通

板子       ping  虚拟机   通

虚拟机      ping  电脑    通

电脑      ping  虚拟机   通

贴下图片

板子ping 电脑、网关、虚拟机

虚拟机 ping 板子

电脑ping板子

哈哈,是不是成功啦

试一下在板子上新建一个123.c文件

看一下虚拟机上有没有

有了就成功了,到此结束。

--------------------------------------分割线 --------------------------------------

--------------------------------------分割线 --------------------------------------

linux通过网关挂在nfs,NFS 网络文件系统挂载在A8板子上相关推荐

  1. NFS(网络文件系统)基于什么协议

    理论部分 NFS(网络文件系统):让网络上的不同linux/unix系统机器实现文件共享 nfs本身只是一种文件系统,没有提供文件传递的功能,但却能让我们进行文件的共享,原因在于 NFS 使用RPC服 ...

  2. NFS(网络文件系统)配置(Ubunut/Deepin等系统)

    NFS(网络文件系统)配置(Ubunut/Deepin等系统) 网络文件系统(NFS)是一种分布式文件系统协议,最初由Sun Microsystems于1984年开发,允许客户端计算机上的用户通过计算 ...

  3. linux同一目录挂两个盘,一个目录挂载多个磁盘 linux同一目录挂两个盘

    多个硬盘可以挂载到同一个目录吗? Linux系统可以将多个裸设备挂在同一目录下,但windows不能,但不排除某些数据库应用程序可以直接读取裸设备并将其挂在同一目录下. linux一个目录能同时挂载多 ...

  4. php nfs,NFS(网络文件系统)服务器简单解析

    NFS网络文件服务器 NFS是网络文件系统的简称,主要用在linux与linux之间的共享. NFS在centos系统中被默认安装,它依赖于portmap和nfs-utils两个软件包,其中portm ...

  5. 网络文件系统 | NFS 服务

    NFS存储服务 定义 NFS即网络文件系统,是一种通过网络方式共享文件系统的通用共享解决方案. 版本对比 Centos 7 版本默认使用版本v4,最小化安装的应该没有. 更多的版本对比可以参考官方网站 ...

  6. 深入理解Linux文件系统之文件系统挂载(下)

    接着: 深入理解Linux文件系统之文件系统挂载(上) 本文为文件系统挂载专题文章的第二篇,主要介绍如何通过挂载实例关联挂载点和超级块并添加到全局文件系统树. 4. 添加到全局文件系统树 4.1 do ...

  7. linux上ftp和ns有什么区别,Linux下ftp使用及nfs网络文件系统

    ftp 是一个文件传输协议 ,是tcp/ip 文件传输协议的一种 ftp可以用与文件的共享也可以用于文件的固定IP的收集 Linux下使用说明: 首先我们需要安装ftp程序 yum -y instal ...

  8. Linux运维系列总结-Linux系统启动过程、WEB工作原理、DHCP工作原理、DNS解析原理、NFS网络文件系统、FTP文件传输协议、PXE+KICKSTART自动安装系统

    Linux运维系列总结-Linux系统启动过程.WEB工作原理.DHCP工作原理.DNS解析原理.NFS网络文件系统.FTP文件传输协议.PXE+KICKSTART自动安装系统 1.Linux系统的启 ...

  9. Linux下NFS(网络文件系统)的建立与配置方法

    网络文件系统( NFS ,Network File System)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远 ...

最新文章

  1. 成功解决TypeError: take() got an unexpected keyword argument ‘fill_value‘
  2. QuorumPeerMain.runFromConfig
  3. VirtualBox基础使用
  4. 世界主要国家的网络管理体制
  5. wordpress mysql port_Kubernetes
  6. 01在Windows Server 2008R2上面搭建一台根DC
  7. 【组合数学】递推方程 ( 有重根递推方程求解问题 | 问题提出 )
  8. c语言中英文转换器在线转换器,汉英转换器
  9. 移动端优秀框架--Amaze UI(h5)
  10. java实现多媒体播放器_JAVA播放器设计
  11. 鸡汤_产品经理职责概要
  12. GD2016noip获奖名单
  13. #199-【莫队】小Z的袜子
  14. 第7章第34节:五图排版:只有一段文字的一大四小式布局 [PowerPoint精美幻灯片实战教程]
  15. 如何编写Python爬虫
  16. 最强GPU助力,Imagination踏上新征途
  17. OWC11绘制双轴图表
  18. OrangePi3开发板使用指南
  19. 运营好公众号需要具备的能力/技能
  20. Linux命令 ——ipconfig与ifconfig命令用法及区别

热门文章

  1. C++智能指针与动态内存分配
  2. 中国1,3丁二醇市场趋势报告、技术动态创新及市场预测
  3. 中国净水装置行业市场供需与战略研究报告
  4. 拿来就用:11款不容错过的 Node.js 框架
  5. 红帽干掉 CentOS 8,CentOS Stream 上位
  6. @程序员,CSDN卫衣、背包、鼠标垫......福利来啦!!!
  7. 中国首个芯片大学最快于本月底在南京挂牌;​华为方舟编译器正式支持 C 语言;Ora2Pg v21.0 发布|极客头条
  8. 2020 年微服务领域开源数字化报告发布,阿里扛起微服务大旗
  9. Python结合Tableau,万字长文搞定传统线下连锁店数据分析
  10. 如何用 CNN 玩转 AlphaGo 版的五子棋?