NFS启动根文件系统

我们再进行嵌入式开发的时候,总是会想要找到跟简单跟快捷的开发方式。

那么nfs启动根文件系统就是一种非常快捷方式。

nfs是什么呢?

Network file  system知道这个全称我们大概就明白它是什么东西了。对它有一个直观的印象了。

网络文件系统(Network File System,NFS ),是在 Unix 系统间实现磁盘文件共享的一种方法,它支持应用程序在客户端通过网络存取位于服务器磁盘中数据的一种文件系统协议。最早于1984年由sun公司开发。功能是透过网络让不同的机器、不同的操作系统能够彼此分享个别的资料。

通过nfs启动根文件系统有什么好处呢?

回答这个问题,我们先来看看我们开发的模式是什么呢?

因为开发板上条件有限,所以不可能进行代码的编辑和修改,只能进行应用程序的验证。

而代码的编写,应用程序的开发却是在主机上进行的。我们开发的应用程序呢,都是放在根文件系统中。

可以说根文件系统是应用程序运行的载体。这样我们就能想到在我们的开发过程中一个繁琐的工作就是不断的

把我们修改后的文件系统下载到开发板中去了。

尽管,三星公司有一个比较好的DNW软件(通过U口下载)使得下载速度有了很大的提高(比起串口的115200),

但是相对于10M/S的网络来说还是有一定差距的。

所以便有了这种通过网路启动文件系统的开发模式。从上面的叙述不难总结出nfs启动文件系统的优点便是省时

简单。

然后,我们来看看怎么通过nfs启动根文件系统

关于他的设置,主要分成两大部分

第一:主机的设置,主机必须支持nfs,同时防火墙需要关闭

第二:开发板bootlaoder,kernel 的设置。

1.先安装nfs

apt-get install  nfs*

或者

yum install   nfs*

2.设置共享目录

 修改主机上的/etc/exports文件的内容,添加一行,
/home/share *(rw,sync,no_root_squash)
注意在:root和*之间有空格。
这里/home/bz/nfsd代表的要共享输出的root文件系统的共享目录: *代表所有的客户机都可以挂载这个文件系统;rw代表客户机可以读写许可来挂接它们的根文件系统;no_root_squash选项允许客户机以主机上的root身份挂接根文件系统。
关闭防火墙
service iptables  stop(fedora中)
3.编译内核设置内核启动参数

在内核源码目录中

执行make menuconfig

进入file system

            -》Network file systems

                  -》NFS  client  Support

                  -》Root  file  system on NFS 

进入bootoption 

选项(也可以修改.config)

添加如下参数

console=ttySroot=/dev/nfs nfsroot=192.168.99.51:/home/bz/nfsd ip=192.168.99.52:192.168.99.51:192.168.99.1:255.255.255.0:matrix4.arm9.net:eth0:off

其中那个IP参数的意思是:板子的地址:主机的地址:网关:子网掩码:主机名:网卡:off

主机名意义不大,重要的是板子的ip地址,和主机的地址一定要在同一网段。

接着在bootloader中设置ip地址为以上的板子ip。

4启动开发板,将网线连接好。

这样你就可以通过NFS启动根文件系统了。







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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值