我用的板子是OK6410,按照下面的方法,挂载了NFS到板子上。
转载一下验证了的好东西
Step1:pc端安装nfs服务器
apt-get install nfs-kernel-server
//有的教程中还让格外安装nfs-common,其实没必要,安装的时候会附带装上
step2:ip配置
1.命令格式为:ifconfig eth0 IP地址 netmask 子网掩码 up ;
2.虚拟机需要改为桥接模式;
3.Vmnet和本地网卡的ip可以不用设置,只设置虚拟机的和开发板的,保证两者能ping通即可,如本例设施主机ip:192.168.2.1/24开发板ip:192.168.2.10/24
4.Windows杀软与防火墙需关掉,不然会出现mount之后长时间没反应;
Step3: pc端配置
1.修改/etc/exports,在末尾添加:/root/nfs192.168.2.*(rw,sync,no_root_squash)
// /root/nfs 服务器端共享目录,可自定义,权限需设置为777
// 192.168.2.* 允许访问nfs服务器共享目录的ip范围,可自定义
// rw客户机对共享目录权限
// sync同步写入存储器,可选
// no_root_squash允许客户机享有主机root身份,可选
// 括号中的三个参数之间不可有空格
// /root/nfs与 192.168.2.*间有一个空格
2.重启nfs服务:service nfs-kernel-server
3.使以上改动生效:exportfs –a
Step4:开发板挂载
mount –t nfs –o tcp , nolock 192.168.2.1:/root/nfs /mnt
// /mnt为开发板上挂载点
接触挂载命令为:
umount 192.168.2.1:/root/nfs /mnt
Tips:
如果不成功主要考虑:
1.共享目录权限;
2.Ip设置;
3.防火墙与杀软;
4.是否重复挂载;
5.虚拟机与windows间的共享目录不能被挂载;
6.有些情况下挂载命令不加“-o nolock”会报错,比如本例。
整整两天的时间,从遇到问题,研究问题,解决问题,查阅了许多资料,做了很多测试,很辛苦,希望能帮到大家
发现用mount -t nfs -o nolock 192.168.1.136:/nfs /mnt 可以正常挂载,但是大一些的文件传输的时候会出现问题“nfs:server is notresponding,still trying”
网上查找得知“NFS 的默认传输协议是 UDP,而PC机与嵌入式系统通过UPD交互时就会出现严重的网卡丢包现象。”
命令修改为mount -t nfs -o tcp , nolock 192.168.1.136:/nfs /mnt 顺利搞定。文件传输也没有问题了。