Lession 10 嵌入式NFS文件系统的介绍与应用

Lession 10 嵌入式NFS文件系统的介绍与应用

嵌入式是宿主机 + 开发板的开发模式,两者之间的网络通讯与文件共享是进行高效率开发调试的前提条件。
NFS文件系统是嵌入式开发调试的快速高效手段,掌握与熟练使用是必备技能。

一、NFS简介
1、NFS:Network FileSystem
通过NFS挂载远程主机的目录,访问该目录就像访问本地目录一样
使用NFS服务能够方便地使各unix-like系统之间实现共享
Samba:在unix-like系统和windows系统之间共享

2、NFS模式:C/S模式,RPC服务框架
NFS Server <----------> NFS Client
NFS运行在SUN的RPC(Remote Procedure Call,远程过程调用)基础上,RPC定义了一种与系统无关的方法来实现进程间通信

  1. NFS服务与安装:
    portmap服务
    nfs-kernel-server服务
    安装:# sudo apt-get install nfs-kernel-server
    启动:# sudo /etc/init.d/nfs-kernel-server start
    停止:# sudo /etc/init.d/nfs-kernel-server stop
    状态:# sudo /etc/init.d/nfs-kernel-server status
    重启:# sudo /etc/init.d/nfs-kernel-server restart

二、NFS使用配置
1. 配置文件: /etc/exports
对NFS服务的访问是由exports来批准,它枚举了若干有权访问NFS服务器上文件系统的主机名。
文件控制对目录的共享(NFS挂载目录及权限由该文件定义),书写规则是每个共享为一行)。

	格式:[共享目录] [主机名或IP](参数,参数...)
	第一个参数是要让客户机访问的目录,第二个是你允许的主机IP,最后的()内是访问控制方式。
	
2. NFS共享控制参数:man exports
	ro 只读访问
	rw 读写访问
	sync 所有数据在请求时写入共享(默认)
	async NFS在写入数据前可以相应请求
	secure NFS通过1024以下的安全TCP/IP端口发送
	insecure NFS通过1024以上的端口发送
	wdelay 如果多个用户要写入NFS目录,则归组写入(默认)
	no_wdelay 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置
	hide 在NFS共享目录中不共享其子目录
	no_hide 共享NFS目录的子目录
	subtree_check 要求检查请求访问的目录或者文件是否在共享目录下
	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
	
3. 配置命令
	exportfs
		重新加载/etc/exports的共享目录,卸载NFS Server共享的目录或者重新共享
		若更改了/etc/exports,运行以下命令进行更新:
			$ sudo exportfs -r
	showmount 
		用來查看NFS共享的目录资源, 查看NFS Server的export list:
			$ sudo showmount -e

二、NFS开发板使用

1、宿主机防火墙:在挂载失败时返回来检查设置
一般需要关闭防火墙服务,确保没有屏蔽NFS使用的端口和允许通信的主机

2、NFS内核支持
Network FileSystem --> [] NFS Client
首先查看目标板kernel自身是否支持NFS
cat /proc/filesystems命令: 是否有NFS一行

3、NFS目录挂载
挂载格式: mount [Server IP]?[share dir] [local mount point]
# mount -t nfs -o nolock 192.168.10.11:/opt/FriendlyARM/mini2440/root_nfs /mnt/root_nfs
检查挂载:挂载失败会有错误原因打印
# df -h
取消挂载
# umount /mnt/root_nfs

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值