日期:2014-05-16  浏览次数:20719 次

开发板挂载虚拟机nfs系统的问题
这些天想用开发板挂载虚拟机上的nfs启动,情况如下:
主机的操作系统是windowsXP
虚拟机的操作系统是fedora9
使用的虚拟机是VMware8.0(试过用7.13和6.5,问题也没有解决)
1、主机与开发板通过路由器连接,主机可以与开发板互相ping通,可以进行ftp传输。
2、虚拟机使用动态IP通过nat与主机相连以后可以连接到外网,可以ping通网关,可以ping通开发板,但是开发板不能ping通虚拟机。开发板ping虚拟机的IP无反应。
虚拟机可以用ftp连接开发板传文件,但开发板不能挂载虚拟机上的nfs系统,虚拟机自己挂载自己的nfs也不行。
3、虚拟机使用静态IP通过桥接方式与主机相连以后不能连接到外网,但是虚拟机可以与主机互相ping通,而且主机可以使用虚拟机的samba服务。虚拟机在静态IP下能自己挂载自己的nfs。虚拟机无法ping通网关,无法ping通开发板,开发板也不能ping通虚拟机。
桥接的设置上已经指定了物理网卡。

使用桥接方式相连时虚拟机的网络设置如下:
IP地址:192.168.1.101
子网掩码:255.255.255.0
网关:192.168.1.1
主机的I网络设置如下:
IP地址:192.168.1.100
子网掩码:255.255.255.0
网关:192.168.1.1
开发板的网络设置如下:
IP地址:192.168.1.102
子网掩码:255.255.255.0
网关:192.168.1.1

目前的判断是:
1、在nat方式下虚拟机使用动态IP无法使用nfs服务
2、nfs服务是正常的,因为虚拟机可以自己挂载自己的nfs。
3、不是因为桥接中的自动设置引起的,因为在桥接的时候已经指定了物理网卡,不会错选到虚拟网卡上。
4、应该不是因为防火墙的原因引起的。linux的防火墙已经被我关闭了
/etc/init.d/iptables status 
iptables: Firewall is not running.
windows的系统防火墙也被我关闭了,全部的杀毒软件和防火墙都被我卸载了,都不行。
5、应该不是因为vm的网络服务被我关闭引起的,因为查看启动服务中所有的vm服务都是开启的。
6、应该不是因为vm与其他虚拟机冲突引起的,因为我把virtualbox也卸载了问题仍然存在。
7、应该和wm的版本没有关系,使用了三个版本都存在同样的问题。
8、路由器应该没问题,主机和开发板能正常通讯。
9、应该和vmtool没有关系,每次换版本都会用对应的vmtool,而且如果有问题的话nat方式应该也不能上网。

目前的主要目标是让开发板能利用虚拟机上的nfs启动就可以了。(主要是测试开发板能否正常在nfs上启动)
(试过使用sfu来启动windows的nfs服务,开发板可以正常挂载文件夹,但是此服务使用的是windows文件系统,用命令把设备文件写入此系统会失败,目前使用windows的nfs服务还是无法启动系统)
不知各位有什么解决的办法没?

------解决方案--------------------
首先得用vm得用桥接
然后保证开发板和fc9能互相ping通(uboot状态只能ping别人,不能被ping,所以开发板要进入到linux下)
你可以不把pc和开发板接路由器或交换机,直接把pc和开发板用网线接起来就好
这样开发板和fc9能够互相ping通,才有下文

然后才是arm的内核里要加入nfs client的支持,以及配置内核启动参数
总之,先ping通再说
------解决方案--------------------
同意楼上的,首先你要确认编译的arm内核中添加了nfs的支持
------解决方案--------------------
我擦 连ping都这么艰难吗?有这么变态吗?
交叉直连无所谓了,pc的网卡能自动匹配的

首先开发板和windows ping通
然后windows和fc9 ping 通
最后开发板和windows ping通

三者的ip在一个网段即可啊 ,就是你1楼的配置即可啊