iTOP-6818开发板设置NFS共享目录的实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
iTOP-6818开发板设置NFS共享目录的实现
NFS 共享目录的制作过程。主要分为两个步骤:1、搭建NFS 服务器2、配置内核。
NFS 是Network FileSystem 的缩写,是由SUN 公司研制的UNIX 表示层协议(pressentation layer protocol),NFS 是基于UDP/IP 协议的应用。它的最大功能就是可
以通过网络让不同的机器,不同的操作系统彼此共享文件,可以通过NFS 挂载远程主机的目录,访问该目录就像访问本地目录一样,所以也可以简单的将它看做一个文件服务器。通过NFS 服务,可以实现在线调试文件系统或应用程序,而不用像传统的方式生成文件系统镜像,然后烧写到iTOP-4418/6818 的eMMC里,再启动开发板。通过NFS 服务可以提高调试的效率。
1 基本环境介绍
使用硬件环境是:
一台PC,上面运行虚拟机ubuntu、
一块iTOP-6818 开发板。
PC 机和iTOP-6818 开发板通过网线连接到路由器上面,路由器分配的网段是192.168.2.x 的ip 地址,默认网关是路由器的ip 地址,即192.168.2.1。虚拟机Ubuntu 的ip 地址是192.168.2.185,iTOP-6818 开发板的ip 是192.168.2.230,网段的子网掩码是255.255.255.0。大家要根据自己使用的网络环境来设置ip 地址,设置原则是确保虚拟机Ubuntu 的ip 和iTOP-6818 开发板的ip 在同一网段。
2 搭建NFS服务器
实现NFS,需要一个主机作为NFS 服务器,选择虚拟机Ubuntu 作为主机。首先需要在在虚拟机Ubuntu 上安装Ubuntu NFS 服务,这是一个软件包,可以使用apt 命令下载(当然,首先要保证虚拟机可以上网)。在Ubuntu root 用户下输入“apt-get install nfs-kernel-server”命令安装Ubuntu NFS 服务,如下图。
在安装过程中会提示”是否继续安装”的信息,输入”y”,如下图。
然后按回车,会继续安装。安装完成,如下图。
为了确保确实可以安装成功,再次执行“apt-get install nfs-kernel-server”命令,如下图。
由上图可知,零更新、零新安装,说明安装已经成功。继续搭建NFS 服务器。在/etc/exports 文件的最后一行添加:
/home/minilinux/ *(rw,sync,no_root_squash),如下图。
下面讲解一下上面输入的内容都代表什么意思:
/home/minilinux/:要共享的目录;
*:代表允许所有的网络段访问;
rw:是可读写权限;
sync:是资料同步写入内存和硬盘;
no_root_squash:是Ubuntu nfs客户端分享目录使用者的权限,如果客户端使用的是root 用户,那么对于该共享目录而言,该客户端就具有root权限;
其他Ubuntu nfs 常用的参数有:
ro:只读访问
async :nfs 在写入数据前可以相应请求
secure:nfs通过以下的安全TCP/IP 端口发送
insecure:nfs 通过1024 以上的端口发送
wdelay:如果多个用户要写入NFS 目录,则归组(默认)
no_wdelay:如果多个用户要写入NFS 目录,则立即写入,当使用async 时,无需此设置
hide:在nfs 共享目录中不共享妻子目录
no_hide:共享nfs 目录的子目录
subtree_check:如果共享/usr/bin 之类的子目录时,强制nfs 检查父目录的权限(默认)no_subtree_check:和上面相对,不检查父目录权限
all_squash:共享文件的UID 和GID 映射匿名用户anonymous,适合公用目录
no_all_squash:保留共享文件的UID 和GID(默认)
root_squash root:用户的所有请求映射成如anonymous 用户一样的权限(默认)
no_root_squash root:用户具有根目录的完全管理访问权限
anonuid=xxx:指定nfs服务器/etc/passwd 文件中匿名用户多的UID
anongid=xxx:指定nfs 服务器/etc/passwd 文件中匿名用户的GID
请注意:如果使用的是Ubuntu12.04 系统则执行这一步重启。
接下来重启portmap 服务,输入“/etc/init.d/portmap restart”命令,运行结果如下
图。
请注意:如果使用的是Ubuntu14.04 或者Ubuntu16.02 系统则执行这一步重启。
接下来重启rpcbind服务,输入“/etc/init.d/rpcbind restart”命令,运行结果如下
图。
最后重启nfs 服务,输入“/etc/init.d/nfs-kernel-server restart”命令,运行结果如下图。
至此,Ubuntu nfs 服务器端的配置完成。
3 测试NFS服务器
完成前面的搭建工作之后,可以在虚拟机Ubuntu 本机上验证一下。把/home/minilinux
挂载到/mnt目录下,需要输入“mount -t nfs localhost:/home/minilinux /mnt”命令,并使用“df”命令查看是否挂载成功,如下图。
可以看到上图中最后一行就是挂载的nfs 文件系统,这说明Ubuntu nfs服务器端搭建成功了。
最后可以使用命令“umount /mnt”卸载NFS。下面进行开发板上的测试。
4 NFS共享目录使用介绍
通过路由器网线连接开发板和路由器。系统起来后首先使用“ifconfig”查看开发板ip。如下图。
然后查看一下NFS 服务器的ip。