环境:ubuntu14.04(非虚拟机),OK6410

环境搭建:

(1)

#sudo apt-get install nfs-kernel-server

如果已经是最新版本了,无需安装

(2)

建立nfs文件夹,在ubuntu命令行中输入,

$ mkdir /nfs

$ chmod 777 /nfs

$ chmod  777  /nfs/*

(3)

打开/etc/exports文件,在末尾加入:

/nfs *(rw,sync,no_root_squash)

注:nfs允许挂载的目录及权限,在文件/etc/exports中进行定义,各字段含义如下:

/nfs:要共享的目录

* :允许所有的网段访问

rw :读写权限

sync:资料同步写入内在和硬盘

no_root_squash:nfs客户端共享目录使用者权限

(4)

重启服务:

#sudo /etc/init.d/nfs-kernel-server restart      <---重启nfs服务

#showmount -e                                    <---显示共享出的目录

注意:若重启nfs服务时出现如下错误

* Stopping NFS kernel daemon                                            [ OK ]

* Unexporting directories for NFS kernel daemon...                      [ OK ]

WARNING: /etc/modprobe.conf line 1: ignoring bad line starting with 'Cannot'

WARNING: Could not open 'kernel/net/sunrpc/sunrpc.ko': No such file or directory

WARNING: Could not open 'kernel/fs/lockd/lockd.ko': No such file or directory

WARNING: Could not open 'kernel/fs/nfs_common/nfs_acl.ko': No such file or directory

WARNING: Could not open 'kernel/net/sunrpc/auth_gss/auth_rpcgss.ko': No such file or directory

FATAL: Could not open 'kernel/fs/nfsd/nfsd.ko': No such file or directory

* Not starting NFS kernel daemon: no support in current kernel.

采用如下语句改正错误:

sudo ln -s /lib/modules/3.13.0-45-generic/kernel/ /

结果如下:

* Stopping NFS kernel daemon                                             [ OK ]

* Unexporting directories for NFS kernel daemon...                      [ OK ]

WARNING: /etc/modprobe.conf line 1: ignoring bad line starting with 'Cannot'

* Exporting directories for NFS kernel daemon...                          [ OK ]

* Starting NFS kernel daemon                                                    [ OK ]

nfs配置成功

本机测试

(1)本机测试

现在可以在本机上试一下:

#sudo mount -t nfs localhost:/home/kevin /mnt

注:localhost为本机linux的IP地址

这样就把共享目录挂到了/mnt目录,取消挂载用:

#sudo umount /mnt

挂在根文件系统

(1)

将制作好的文件系统放入 /nfs 中,文件系统的制作方法见http://www.cnblogs.com/apolloenterprise/p/4351408.html

(2)

kernel中要设置启动nfs

$ make menuconfig ARCH=arm

General Setup -  取消  Initial RAM filesystem and ...

File System   选中  Network FileSystem

选中  Root file System on NfS

$ make uImage ARCH=arm CROSS_COMPILE=arm-linux-

编译完成

(3)

启动参数设置

开发板上电,进入uboot命令行:

$ setenv bootargs " console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.200:/nfs ip=192.168.1.100"

注意:192.168.1.200   PC IP

192.168.1.100  开发板IP

保存:

$ saveenv

(4)tftp 下载内核后,bootm启动内核,此时文件系统会被调用

【原创】-- nfs安装配置及使用,挂载根文件系统的更多相关文章

  1. Ubuntu 12.04下NFS安装配置图解

    以前就听说过nfs服务,但是一直没有用,在学习制作根文件系统的时候,才算是真正用上它了,我感觉它还不错,通过它“挂载”制作好的根文件系统.它在嵌入式中的角色就用下面的一张图说明吧! 用网线将主机与开发 ...

  2. 用Qemu模拟vexpress-a9 (四) --- u-boot引导kernel,用nfs挂载根文件系统

    环境介绍 Win7 64 + Vmware 11 + ubuntu14.04 32 u-boot 版本:u-boot-2015-04 Linux kernel版本:linux-3.16.y busyb ...

  3. cinder块存储 后端采用lvm、nfs安装配置

    #cinder块存储 后端采用lvm.nfs安装配置 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html #cinder ...

  4. cinder存储节点 后端采用lvm、nfs安装配置

    #cinder存储节点 openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html #cinder存储节点 #cinder后端采 ...

  5. CentOS 6.3下NFS安装配置

    CentOS 6.3下NFS安装配置 一.环境介绍   NFS服务器:CentOS6.3 192.168.8.20 NFS客户端:CentOS6.5 192.168.8.39 二.服务器端安装配置   ...

  6. 目标板通过nfs挂载根文件系统

    目标板挂载根文件系统的方法有两种(这里所说的服务端就是ubuntu,Ubuntu已经成功安装了nfs服务,并且保证服务端与目标板ping 通) 第一种:等待开发板启动之后去挂载,此时文件系统从Flas ...

  7. 根文件系统制作、NFS配置与安装及利用NFS挂载根文件系统

    最近打算从头开始制作根文件系统,下面是开发过程. 一.根文件系统的制作 0.FHS(Filesystem Hierarchy Standard)标准介绍 该标准规定了根目录下各个子目录的名称及其存放的 ...

  8. CentOS 6.5下NFS安装配置

    [root@local /]# yum -y install nfs-utils rpcbind3.创建共享目录:[root@local /]# mkdir /sharestore4.NFS共享文件路 ...

  9. Ubuntu 14.04 下NFS安装配置

    1.执行命令:sudo apt-get install nfs-kernel-server; 2.执行命令:mkdir /home/jack/nfs-share 建立一个nfs服务的专有的文件夹; 3 ...

随机推荐

  1. UIUC同学Jia-Bin Huang收集的计算机视觉代码合集

    转自:http://blog.sina.com.cn/s/blog_631a4cc40100wrvz.html   UIUC的Jia-Bin Huang同学收集了很多计算机视觉方面的代码,链接如下: ...

  2. html doctype 作用介绍

    文档模式主要有以下两个作用: 1.告诉浏览器使用什么样的html或xhtml规范来解析html文档 2.对浏览器的渲染模式产生影响:不同的渲染模式会影响到浏览器对于 CSS 代码甚至 JavaScri ...

  3. angular学习笔记,很乱哈哈。

    1.鼠标悬浮出现的信息v-bind:title="message" 2.对该便签进行结果判断显示隐藏v-if=''控制台设置 app3.seen = false(消失).控制台设置 ...

  4. BCB中获得RichEdit 默认行间距

    首先,这些功能支持RichEdit2.0 以上功能: 其次,用常规的方法是无法获得LineSpace 的: 你使用 EM_GETPARAFORMAT也得不到,你会发现dyLineSpacing 的值永 ...

  5. python面向对象个人总结

    基础概念:面向对象其实就是类与对象的使用. 类是模板,对象是实例.模板创建实例,实例去类里面去执行类的方法.类的例子: class Foo:           def Bar(self):      ...

  6. git init 和 git init --bare 的区别

    http://blog.csdn.net/ljchlx/article/details/21805231 概念  裸仓储 :不可以在上面做git操作    the operation must be ...

  7. Java NIO教程 前言

    阅读本文前,建议你先了解 旧I/O NIO 是 New I/O 的缩写,要了解它真正的内涵,需要掌握的知识还是比较多的.我努力在这几篇笔记里,勾勒出整个io的面貌.为大家的深入学习铺路. I/O简史 ...

  8. navicat for mysql

    下载地址:https://www.navicat.com/cht/download 详情:http://baike.baidu.com/link?url=zo3CUg3HC5XUHkz4YqXO6Em ...

  9. 【Lua】Debian环境下openresty的安装

    OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器,它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. OpenResty 通 ...

  10. NC WebService接口开发流程

    一.定义类: 接口类 包定义在public下,接口类名为I开头,Service结尾 实现类 包定义在private下,实现类名以ServiceImpl结尾 VO类 若有VO类,也放在public下 U ...