全部博文(92)
分类: 嵌入式
2010-04-17 15:33:33
NFS配置与使用
NFS从本质上来说就是建立了开发板与电脑Linux 开发环境之间联系,使得新生成的zImage和根文件系统root可以便捷地挂载到开发板上,而不需要每次修改后都烧写。
NFS是Net File System的简写,即网络文件系统.网络文件系统是FreeBSD支持的文件系统中的一种
NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序可以象访问本地文件一样访问远端系统上的文件。
在电脑Linux 操作环境中:
具体办法:
1. Linux系统设置->服务器设置->NFS服务器 选择添加 目录栏添”/” 主机栏添“*” 权限改读写,用户访问栏将第一栏选上,确定。
2. service nfs restart打两遍
3. 再打setup 选System service 空格选择nfs Tab退出(这样每次启动Linux,自动加载)
必须移植网卡驱动:
在下一篇文章中,专门介绍移植过程。
将虚拟机的IP地址serverip设置为:192.168.1.110
将开发板的IP地址ipaddr 设置为:192.168.1.120
将电脑的IP地址,也就是TCP/IP协议中的地址设置为:192.168.1.8
三者在同一网段。
在开发板端:
l 先通过ping 192.168.1.110 测试与虚拟机的通信是否正常。
l 在开发板新建目录:
#mkdir mnt/nfs
l 用命令将要挂载的文件目录,挂上:
#mount -t nfs -o nolock 192.168.1.110:/home/yan/rootnfs /mnt/nfs
l 这时会有一些常见的错误:(解决方法也写明)
1. mount: RPC: Unable to receive; errno = Connection refused
原因是linux没有开启NFS服务,配置好NFS服务器后,确保重启NFS服务:
#service nfs restart,如果还出现这个错误,可以执行这个命令后再试试:
#service portmap start,开启portmap服务
2. mount: 192.168.1.230:/nfs failed,reason given by server:permission denied
原因可能是因为,要挂载的目录没有读写权限,确保在配置NFS服务器时,基本权限是读/写,还有的原因是/etc/exports 档案没设定好
3. rpcbind: server localhost not responding, timed out
挂载NFS命令加上-o nolock,就不会出现这个问题了
#mount -t nfs -o nolock 192.168.1.105:/ /mnt/nfs