原创 Ubuntu 9.10 下ARM开发板的NFS挂载

2010-2-2 11:48 5447 9 11 分类: MCU/ 嵌入式

最近花了很多时间学习ARM上的Linux操作,在Ubuntu 9.10 下ARM开发板的NFS挂载这块耽搁了好几天,特别头疼,今天下午终于挂载成功了。这里把相关的部分写一下也方便以后遇到同样问题的朋友快速解决。


老实说对于Linux,自己绝对是个新手。之前只是耳闻身边很多朋友说Linux很好很不错,稀罕的Linux至今还在坚持使用那些神秘的命令行(有点高手的味道)。最近自己才在电脑上装了Ubuntu 9.10 试了试,或许新手对于Linux相当不熟悉吧,感觉Linux的确在适用性和界面友好上还有待提高-----不知网上传言“Ubuntu 已可比Win7”是否有足够的道理,但各有各的优缺点。有一点可以说是正确的Linux和目前的Win7的软件兼容性都还不太好。我的电脑上以相同的配置分别用硬盘装的系统,感觉在XP环境下无论操作方便和系统的速度上都要比Ubuntu 9.10 略胜一筹(或许我软件配置优化得不够好?)-----也就开了几个网页,再打开了几个文档,加上一个终端,Ubuntu 9.10居然让我多次弄死机了^_^总之呢Linux目前还是属于高手玩的,在普及上要Windows相比还有很长一段路,这些是题外话。


市面上很多的书介绍的搭建ARM的交叉开发环境都是基于RED HAT和FEDORA的,关于Ubuntu的不多,Ubuntu 的很多指令和其他版本的Linux都有较大差别而且每个版本都会有所改变。自己也是花了好几天的功夫在网上搜集和测试那些方法,可是到最后却发现解决问题的关键往往都是很简单的,只是我们经常忽略一些细节性的问题,并且有太多的东西真得我们自己去尝试去探索,这个过程虽然很难熬,但是只要坚持,熬过来了终会有很多收获的而不能仅仅听别人说。之所以在Ubuntu 9.10 下ARM开发板的NFS挂载上耽搁了几天在于对Ubuntu 9.10 的网络连接不太熟悉。Ubuntu 9.10 安装时默认的网卡设置为Auto eth0 ,每次一连上以太网时,它会自动连接上网络,但是当你用这种配置去连接你的ARM开发板时,它就连不上了,这让自己总是忽略网络连接这块并以为是NFS配置不对。按网上的很多人说的办法去配置portmap,还去关什么防火墙(Ubuntu 9.10 自己默认没有安装的,更本用不上去关)甚至去怀疑自己的许多指令是不是敲错了^.^


总的说来,Ubuntu 9.10 下ARM开发板的NFS挂载和配置,需要首先注意的是要在系统->网络连接中添加一个你自己的手动连接并配置好你的IP、DNS等而不要用Auto eth0 。我的配置(连接上了的)如下图所示:


点击看大图


这样设置完了,就可以先手动连接上(当然硬件也都连好并上电)再ping一下你的开发板了,如果能够ping上,再进行NFS的配置。而NFS的配置呢主要分两步,第一步配置完先测试能否在你的主机上挂载你主机上的共享文件,通过了再测试你的开发板是否能挂在上。若你不是先把网络和IP等设置好,即使配对了NFS也会出现能在你的主机上挂载你主机上的共享文件却就是挂不上开发板,然后就乱了头绪到处找解决的办法,但往往很近才找到解决的办法。


配置NFS没有特别难,网上的办法大多都是可行的,这里只列出自己已测试过的步鄹,参考搜集自网上的方法和相关出处连接整理在文档中,有兴趣的朋友可以查看https://static.assets-stash.eet-china.com/album/old-resources/2010/2/2/b87dfde8-80b1-44dd-85b7-4840b54fdea6.rar。不同版本的Ubuntu 配置细节会有所变化,所以请注意这一点。


另外在Linux的很多书中都介绍用的是VI编辑器,个人感觉那个家伙太古老了,命令又超多,操作特别麻烦,我查了半天居然连个回车的操作都没有找到,实在是无语(当初键盘功能太少时的工具可真是没少让那些开发Linux的工程师没少费脑筋啊)----------为了提高效率,建议安装和使用gedit-----------支持鼠标、复制、粘贴操作等,界面也好看多了。以下操作是在root用户下(Ubuntu 9.10 默认root没有密码,所以必须在你安装时设立的管理用户终端中为其新置密码:$ passwd root 然后输入root的密码,退出管理账户切换用户后方可登录到root中)执行的:


1.在Ubuntu 9.10 的新立得软件管理器中搜索NFS就行,找到搜索出来的nfs-common 、nfs-kernel-server、portmap分别标记后选择应用就可以安装了。也可以用终端命令安装:


#sudo apt-get install nfs-kernel-server  nfs-common  portmap


2.配置portmap(这是网上别人给出的步鄹)

#sudo gedit  /etc/default/portmap

-i 127.0.0.1”-----我测试了 ,似乎在Ubuntu 9.10 中是默认了的
或者


#sudo dpkg-reconfigure portmap

弹出的界面选择“否”-----我测试了 ,似乎在Ubuntu 9.10 中是默认了的


所以这一布可以跳过。


3.配置挂


sudo gedit /etc/exports只需在最后加上一行配置选项就可以


我用的是扬创的2440开发板,配置(配置完后记得保存退出)为:


/utuLinux2.6.24/s3c2440_recover *(rw,sync,no_root_squash)


表示的是:(共享的目录)空格(主机名或者IP)(参数1,参数2,参数3)


上面的*代表所有的客户机都可以挂接此文件系统;rw代表客户机以读写许可来挂接它们的根文件系统;no_root_squash 选项允许客户机以主机上的root身份挂接根文件系统。有人说Ubuntu 9.10 下不可以用*,只能用IP并且还必须写得很全,我自己测试了发现没有这回事的,即你可以用*也可以限制访问的IP段。


4.刷新重载一下exports文件


#sudo exportfs -r


5.重启NFS务器
#sudo /etc/init.d/nfs-kernel-server restart


6.测试本地文件夹能否挂上


# sudo mount 192.168.1.149:/utuLinux2.6.24/s3c2440_recover /mnt


此处注意挂载的文件夹应该具有相应被访问的权限,可以找到该文件夹通过其属性修改和设置


用下面的命令可以查看挂载情况


#df


用下面命令可以查看挂载了的内容


#ls /mnt


我的挂载成功如图:


点击看大图


7.挂载开发板


以终端NFS启动方式(要通过串口minicom配合)


#mount /dev/mtdblock2 /mnt


直接通过开发板IP挂载


#mount -t nfs -o nolock 192.168.1.168:/utuLinux2.6.24/s3c2440_recover /mnt


以上相应文件夹和IP等应和你实际使用的做相应修改。


我的挂载成功的截图如下所示:


点击看大图


Ubuntu的界面看上去比XP柔和些,很适合笔记本^_^

文章评论2条评论)

登录后参与讨论

用户571671 2010-2-4 18:29

你是指开发板还路由器或者别的?

用户1444329 2010-2-2 12:07

楼主是不是用的imx51啊?
相关推荐阅读
用户571671 2011-12-14 21:33
关于“自制简单方便的51/avr单片机USB ISP下载线”的一些说明
   之前自己写的“自制简单方便的51/avr单片机USB ISP 下载线(硬件/软件部分)”得到了很多朋友的关注,大家也提出了一些问题。在这里我系统地说明一下:         1.用沁恒公...
用户571671 2010-06-14 20:28
完全解决Protel 99SE汉化版的菜单和功能丢失问题
Protel 99SE是一款极其优秀的PCB设计软件,小巧而又功能丰富,对于电脑的硬件的要求很低,那些凡能跑WINDOW98的电脑也可以运行。可惜有两个典型的不足:1.没有官方的汉化版,这对于懂英语的...
用户571671 2010-06-04 17:07
让Ubuntu10.04中的YAMAHA声卡发声
自己的电脑上已经装了Ubuntu10.04好久了,最近才发现它居然还是个“哑巴“,一直没有声音,不管是启动还是用各种播放器播放MP3歌曲均不能听到声音。都说Ubuntu对于设备的驱动已经做的很好了的,...
用户571671 2010-03-27 12:04
INTERL BUS和MOTOROLA BUS及其区别
在实际应用中用到的很多带并行总线的芯片的硬件连接、读写操作都分为INTERL BUS和MOTOROLA BUS(某些文献上又叫INTERL 模式和MOTOROLA 模式)这可以在相应的芯片手册上看到,...
用户571671 2010-02-27 13:57
LCD BackLight Control for utulinux 2440 LCD 背光控制
LCD BackLight Control for utulinux 2440 LCD 背光控制                     注解:borlittle仅供学习参考,源代码版权归原著者所有 ...
用户571671 2010-02-27 13:55
LED Example for utulinux 2440 LED测试示例
LED Example for utulinux 2440 LED测试示例注解:borlittle仅供学习参考,源代码版权归原著者所有<?xml:namespace prefix = o ns ...
我要评论
2
9
关闭 站长推荐上一条 /2 下一条