NFS服务的配置(虚拟机下的Linux,开发板是ARM9 S3C2410)

 
NFS 服务的配置
 
最近一段时间在学习嵌入式的知识(主要针对LINUX操作系统ARM系列的开发板),前几天在导师那里弄到了ARM的S3C2410的开发板,开始学习系统的移植以及开发环境的配置,虽然之前看了不少的资料,但一直没自己动手做过。所以拿到板子后不知道怎么弄,还害怕给弄坏了(挺贵的,好不容易拿出来的)。请教了实验室的一位师兄,但很忙。没办法,只能自己一点一点弄了。但从师兄那里得知,原来开发板自带的实验光盘里有介绍(一开始不知道,知道了也没找到,因为文件很多)。
所以开始按照说明里一步一步的配置,因为原来的板子里有已经移植好的Linux,想重新自己弄一下,所以问题也就开始出现了。但最后都被一个一个的解决了!^ _^从这个过程中学到许多东西,开始每当遇到问题解决不了的时候,首先想到的是求助别人,没有认真的思考。后来才发现有些问题是可以自己解决。同时也会有一种成就感!
下面就把遇到的问题和解决的思路跟大家分享一下;
一、首先说一下我机器的软硬件环境吧:
硬件:
CPU: Intel Celeron D 2.4G(现在已经过时了)
内存: 256(装虚拟机至少要521的,我256的也照样运行了,不过两个系统同时运行的时候超慢!!)
ARM S3C2410的开发板 7寸的LCD(那么大居然不带触摸功能!!不知道买的时候怎么想的!)
软件:
虚拟机:用来在 Windows的环境下运行Linux(也就是在虚拟机上安装系统,这样就可以运行Linux系统象运行一个应用程序一样,非常的方便,但只适合学习用)
Linux操作系统:我用的是 2。4内核的。开发板是2。6的(后来还出现个小问题)
SSh SeCure:配合Sambo服务器用的,可以自由的通过网络在Windows和Linux系统间传递文件,非常的好用!(要不只能用U盘拖了,很麻烦!)
二、NFS服务的配置
1、简单介绍
NFS(Network File System)是一种分布式文件系统,允许网络中的安装不同操作系统的计算机间共享文件和外设,所以它的通讯协定设计与主机及作业系统无关. 它是由SUN公司于1984年推出,使得可以本地机一样的使用另一台联网计算机的文件和外设。NFS在文件传送或信息传送过程中依赖于RPC协议
 
RPC, 远程过程调用 (remote procedure call) 是能使客户端执行其他系统中程序的一种机制。由于使用 RPC 的程序不必了解支持通信的网络协议的情况,因此 RPC 提高了程序的互操作性。常用于分布式客户端/服务器模型, 发出请求的程序是客户程序,而提供服务的程序是服务器。
 
在嵌入式Linux 的开发过程中,开发者需要在Linux 服务器上进行所有的软件开发,交叉编译后,通用FTP 方式将可执行文件下载到嵌入式系统运行,但这种方式不但效率低下,且无法实现在线的调试。因此,可以通过建立NFS,把Linux 服务器上的特定分区共享到待调试的嵌入式目标系统上,就可以直接在嵌入式目标系统上操作Linux 服务器,同时可以在线对程序进行调试和修改,大大的方便了软件的开发。因此,NFS 的是嵌入式Linux 开发的一个重要的组成部分.

  嵌入式Linux 的NFS 开发环境的实现包括两个方面:一是Linux 服务器端的NFS 服务器支持;二是嵌入式目标系统的NFS 客户端的支持。因此,NFS 开发环境的建立需要配置linux 服务器端和嵌入式目标系统端.

2、配置过程
 
NFS 服务器端的配置:
(1)               先确认是否安装了NFS,查看目录/etc/xinetd.d/下是否存在nfs文件(一般在虚拟机下安装都会完全安装,所以会有)
(2)               宿主机的网络配置,主要是是IP地址的设置;命令如下:
# ifconfig eth0 down
# ifconfig eth0 192.168.1.10 up
再# ifconfig一下,看配置是否正确,也可以在图形用户界面下配置
(3)               编辑/etc/exports文件,命令如下:
# vi /etc/exports
在里面输入/home/nfs 192.168.1.1(rw,sync,no_root_squash),保存退出;
/home/nfs:是宿主机上共享的文件夹;
192.168.1.11:是开发板的IP地址;
rm:开发板可以读写访问共享的文件夹;
sync所有数据在请求时写入共享 ;
no_root_squash:root用户具有根目录的完全管理访问权限
意思是:允许IP为192.168.1.11的ARM9开发系统将宿主机上的/home/nfs这个目录mount到开发系统下,即ARM9开发系统可以通过网络访问宿主机上的/home/nfs目录。
(4)               重启NFS 命令如下:
# service nfs restart
 
NFS 客户端的配置:
  
(1)       用minicom启动开发系统;
(2)       网络的配置,命令如下:
# ifconfig eth0 192.168.1.11
# ifconfig
(3)       Ping一下主机,看开发板和主机之间是否相通
(4)       在ARM9开发系统中建立目录/mnt/nfs
  # mkdir /mnt/nfs
(5)       若相通,则将宿主机上的目录 /home/nfs mount到ARM9开发系统下的目录/mnt/nfs上。命令如下:
 # mount -t nfs -o nolock 192.168.1.1:/home/embeder/nfs /tmp/nfs
(6)       进入目录/mnp/nfs,查看是否和宿主机上的目录/home/nfs中的内容一样?^_^,应该是一样的。
可能出现的问题:
(1)       服务器端的防火墙没有关掉;会出现Connection Refuse的错误;因为被防火墙给屏蔽掉了!
(2)       出现mount version older than kernal的问题,刚开始介绍的时候说的那个问题就是这个,服务器和开发系统内核版本的问题。但是不要担心,并不用更新,完全可以正常使用。
 
到次NFS服务配置完成了!先写到这里吧,其他的内容在后面的文章中介绍吧!
 
 

              

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值