如何使用nfs协议 使开发板共享ubuntu虚拟机目录

来源:互联网 发布:工作流设计软件 编辑:程序博客网 时间:2024/05/23 13:05

ubuntu虚拟机  13.10

开发板 tiny6410


最初在开发板上运行程序是将程序通过SD卡拷到tiny6410上,这是由于tiny6410支持SD卡,当然这也是外行人经常用的方法,但是很多开发板都是不支持SD卡的,这时候想要再把程序导入SD卡就不是一件容易的事了。但是NFS协议帮我们解决了这个问题,使用NFS协议,可以把虚拟机上的目录共享,使开发板可以直接访问虚拟机上的目录(跟访问自己本机目录一样),这样tiny6410也不用来回用SD卡导程序了。

废话少说,现在开始进入正题。

首先我使用的是xshell软件来控制tiny6410,没有使用超级终端,因为window7之后,系统就没有超级终端了,个人感觉xshell还不错。既可以通过串口通信控制开发板又可以使用ssh协议在主机端控制虚拟机,很方便。特别是由于历史原因,本人已经装了好多虚拟机,此时在虚拟机端就比较卡,但是用xshell在window7端敲命令就一点都不卡。哎呀,又跑题了,现在开始说如何使用NFS协议。

首先,你需要让开发板,主机本地连接和虚拟机的ip地址在同一网段,所谓在同一网段,就是要前三字段对应相同,至于为什么是这样,专业方面的东西我就不多说了。就前三个字段对应相等就对了,免得说的太对,更迷糊。开发板默认ip地址都是192.168.1.230,所以我选择把本地连接地址改为192.168.1.231,在win7中打开网络和共享中心,咦,没有本地连接???亲,确认你的网线一端插在开发板上,一端插电脑上了吗,确认你开发板电源打开了吗?ok,此时就出现本地连接了。

更改本地连接中手动设置ip,如何

之后就是设置虚拟件了   在虚拟机菜单栏中  VM  - > Settings  ->Network Adapter 设置网络连接为custom   VMnet1(bridged)  如下图所示:


关闭之后再设置虚拟机中ip地址  在终端中设置ip地址为192.168.1.232 

命令如下:

       ifconfig eth0 192.168.1.232

此时ip地址就已设置完毕。

在终端中检测三者是否能互相ping通。若能ping通,则说明ip地址配置没有问题。

之后就是设置共享目录了,在虚拟机中查看/etc中是否有exports文件,如果没有,此时很可能是你虚拟机还没有安装nfs服务器。此时你的虚拟机需要能够联网,安装nfs服务器。

在终端中运行apt-get install nfs-kernel-server

安装之后在/etc下就能够看到exports文件,vi /etc/exports 在文件尾行添加共享目录,如下图11行所示

其中 /mnt/tiny6410/是打算作为共享目录的目录。192.168.1.* 表示ip地址为192.168.1.*的任意主机可以访问,rw表示以读/写方式访问。

保存后,再启动nfs服务

/etc/init.d/nfs-kernel-server start

之后就可以挂载目录了。

在开发板终端中输入 mount如下图所示:

如图显示即挂载成功,把虚拟机中/mnt/tiny6410挂载到开发板/mnt/nfs中,此时再进入/mnt/nfs即能访问虚拟机中/mnt/tiny6410中的文件了。

注意在挂载之前应将主机和虚拟机的防火墙都关掉。

linux中查看防火墙状态命令为

   /etc/init.d/iptables status  


暂时关闭防火墙(重启后失效):

     service iptables stop

暂时开启防火墙(重启后失效):

   service iptables start


ubuntu中关闭防火墙如下图所示:


0 0
原创粉丝点击