//找完工作了,在这所剩不多的大学时光里,尽情享受吧。
在闲时想做做毕设,所以就从头到尾搞一搞arm开发板吧 ,。
这是嵌入式开发的第一篇博客,从这开始记录接下来的点点滴滴吧,可生活,可工作。
首先,我手头有的资源有:tiny6410开发板一块,串口线,网线齐全,虚拟机上装有ubuntu12.04的PC一台,路由器一台,校园无线网,校园有线网。
先从虚拟机开始吧 , 首先,在ubuntu系统中安装nfs服务器,即 nfs-kernel-server
在联网的前提下,指令为:apt-get install nfs-kernel-server
安装好 nfs-kernel-server后,就该配置挂载目录和权限了,修改/etc/exports文件,添加如下代码并保存。
/usr/File/tiny6410nfs192.168.0.*(rw,sync,no_root_squash,no_subtree_check)
//上一行的参数解释为,/usr/File/tiny6410nfs 是自己创建的挂载目录,即nfs客户端与nfs服务器共享的目录,在开发板上理解为板子系统
与主机ubuntu共享的目录。而192.168.0.*表示可访问nfs服务器的ip,*代表任意,192.168.0.*表示的是只要在192.168.0这个网段下的ip
都可以挂载nfs,如果只有一个*,表示所有IP都可以挂载此nfs。()里的个意义为:rw表示nfs客户端可以对此文件夹读写,sync代表数据
同步写入内存和硬盘,no_root_squsah表示当远程系统进入此目录时,变成root权限,no_subtree_check表示关闭子树检查,其他选项可
以通过man exports查阅man文档,其中rw,sync为一般选项,都会选上。
修改结束以后,重启nfs服务,指令为:
先 service portmap restart 然后 service nfs_kernel_server restart
到此虚拟机ubuntu上nfs服务搭建完毕,验证功能,验证本机,指令为:
mount 192.168.0.115:/usr/File/tiny6410nfs /mnt
骚等一会,挂载结束后就可以在/mnt下看到/usr/File/tiny6410下的内容了。
接下来在开发板上验证。
先连线,两条线,rs232连接板子串口与pc机的usb串口(SecureCRT用),网线连接pc网线插口和板子网线插口。
接下来就是虚拟机与pc主机设置为桥接方式(在打开虚拟机前将网络连接方式改为桥接方式即可),然后设置主机以太网IP,虚拟机IP,还有
板子IP了,秉持的原则是,三者必须在掩码下为同一网段,)博主主机以太网IP为192.168.0.111,虚拟机IP设为192.168.0.113,板子IP设置为192.168.0.115.
此时通过SecureCRT在板子上敲入以下指令
mount -t nfs -o nolock 192.168.0.113:/usr/File/tiny6410nfs /mnt
挂载结束即可在/mnt下看到/usr/File/tiny6410nfs的内容。
其中出现的问题有,原本我主机一直连接着无线网络时,无线网卡的IP地址为192.168.0.120,PC主机无线网卡IP可与虚拟机ubuntu相互ping通,
之后打开本地连接,设置本地连接的IP为192.168.0.111,掩码为255.255.255.0,设置板子以太网IP为192.168.0.115,PC主机以太网IP可与板子
相互ping通,PC主机的无线网卡IP不能与板子ping通,(当把无线连接与本地连接桥接后,可ping通,然而并没有什么软用)。此时发现板子ping不
通虚拟机IP。有网友说,把无线连接禁用后就可了,照做之,果然成功在板子上挂载上nfs,奇怪的是无意中又把无线打开,发现即可加载nfs,无线也可连接外网了,好神奇。