开启NFS服务.doc_第1页
开启NFS服务.doc_第2页
开启NFS服务.doc_第3页
开启NFS服务.doc_第4页
开启NFS服务.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

开启NFS服务系统平台:Redhat 9.0 开发板平台:TX-2440A什么是NFSNFS(Network File System)即网络文件系统,由Sun Microsystems公司于20世纪80年代设计并实现,其目的是通过网络让安装了不同操作系统的计算机实现特定文件的远程访问,以达到数据共享,NFS实现数据共享的方式也是Client(客户机)/ Server(服务器),习惯上称为C/S模式,客户机(NFS Client)可以挂载远程服务器(NFS Server)共享出来的目录,操作该目录当中的文件就像操作本地文件一样。NFS的实现尽管NFS拥有属于自己的通讯规范,但是NFS本身并不具备资料、信息的传输协议,它之所以能通过网络实现资源的共享,主要是因为NFS用到了一些其它的传输协议,其中RPC在NFS共享数据上就扮演着重要角色。NFS只是负责管理分享出来的目录,至于文件、信息的传递都是由RPC来完成的。RPC(Remote Procedure Call Protocol)即远程过程调用协议,程序可以使用这个协议通过网络从远程计算机上请求服务,在这个过程中屏蔽了底层网络协议的细节。RPC同样采用C/S(客户机/服务器)模式,发出请求的程序是客户程序(客户机),而提供服务的程序是服务器;从应用的角度来说NFS可以看成是RPC的一个服务,开启RPC是NFS实现的前提提到RPC就不得不说potrmap(端口映射),Potrmap是一个服务程序,是进行 RPC 调用时必须执行的,其主要功能是为RPC程序提供端口映射服务,将 RPC程序号转化为端口号,在激活 RPC服务之前,需要开启portmap,嵌入式开发过程中经常会用到NFS,它的优势很明显,从客户机的角度来说可以使用更少的本地磁盘空间,从服务器的角度看也能够为本地工作站节省磁盘空间,因为数据可以存放在一台机器上而且可以通过网络访问到。测试网络是否畅通NFS实现的前提是网络要畅通,测试网络最简单的命令就是Ping,全称为:Packet Internet Grope,即因特网包探测器。在TCP/IP协议的基础上,发送一份ICMP数据包请求给目的主机,并等待返回ICMP应答包。一般用来测试源主机到目的主机网络是否畅通,在这多说几句,有客户反映开发板Ping主机(Linux或者是XP)总是Ping不通,记得也曾经遇到过这个问题,测试了几个Ping的过程,如下:1. 开发板Ping虚拟机下的Linux;将开发板烧写好系统并启动,在命令行输入ping 05(这个IP是虚拟机下Linux的),开发板的IP出厂默认是:0,结果测试失败,没有数据包返回。2. 虚拟机下的Linux Ping开发板;将开发板烧写好系统并启动,在虚拟机下Linux系统终端输入ping 0(这个IP是TX-2440A开发板的),结果测试失败,没有数据包返回。3. 开发板Ping Windows系统;将开发板烧写好系统并启动,在命令行输入ping 28(这个IP是本人所用电脑的,注:为XP系统),开发板的IP出厂默认是:0,结果测试失败,没有数据包返回。4. Windows系统Ping开发板;将开发板烧写好系统并启动,在PC下“开始”“运行”打开运行命令输入窗口,输入:ping 0弹出对话框,显示“Request timed out”,试了几次,结果测试失败,没有数据包返回。5. Windows系统Ping 虚拟机下的Linux, 在PC下“开始”“运行”打开运行命令输入窗口,输入:ping 05,不断的收到数据包,居然测试成功。6. 虚拟机下的Linux Ping Windows系统,在Linux系统终端输入:ping 28,也可以顺利的收到数据包,测试成功。一番折腾,只有Windows系统和Linux系统可以互相Ping,但是这个不是我们想要的结果,难道我的设置有问题?再查1. Windows和Linux系统下的防火墙关了吗?检查了一下都已经关掉了;Windows下通过“控制面板”关掉,Linux下可以通过“主菜单”-“系统设置”-“安全级别”弹出窗体,选择 “无防火墙”。2. 开发板的IP地址(0)、windows的IP(28)、Linux的IP(05),三者在同一个网段吗?显而易见,是在同一个网段上。3. 是网线和网卡问题吗?通过之前配置的TFTP服务下载一个LED.bin文件到开发板内存当中并运行,现象正常,都没有出现问题。很无奈,这个小问题居然解决不了,问了一下我的同事,给出的无非也就是上面我所列出的几条,毕竟那几个是关键,到网络上找找吧,结果还真有出现这个问题的,有朋友关掉了杀毒软件就好了,这个法子我也用了,但还是不行。记得是折腾了两天,最后重新设置了IP:开发板的IP地址为:1(修改方法可以参考另一篇开启TFTP服务)windows的IP为:11Linux的IP是:0(修改方法可以参考另一篇配置Samba)再测试,TX-2440A开发板Ping Windows和Linux均成功,终于OK了,接下来就可以继续NFS了NFS相关软件包的查询1、首先通过查询命令查看是否安装了相关的服务软件,查询portmap所用到的命令是:rpm -qa |grep portmap,如果出现图1所示的现象说明系统已经安装该软件, rootlocalhost root#rpm qa|grep portmap图1 查询portmap软件包如果没有输出则需要安装RPM软件包,该软件包在“Linux镜像RedHat9.0”目录下的shrike-i386-disc1.iso当中,将扩展名iso改为rar,然后将压缩包里RPMS文件夹下的“portmap-4.0-54.i386.rpm”“nfs-utils-1.0.1-2.9.i386.rpm”“redhat-config-nfs-1.0.4-5.noarch.rpm”三个软件包解压、复制到Samba服务器下的共享目录/home/txmcu中,这三个软件包是NFS配置当中需要用到的,先说portmap相关组件,如果系统没有就需要安装,可以通过终端进入该共享目录安装“portmap-4.0-54.i386.rpm”,安装命令为:rpm ivh portmap-4.0-54.i386.rpm,参数这里不多说,可以参考另一篇开启TFTP服务,由于NFS软件包已经随系统一起安装所以就不需要手动安装了。接下来查询NFS服务的核心组件,可以通过命令“rpm -qa |grep nfs”来实现rootlocalhost root#rpm -qa |grep nfs图2 查询NFS软件包可以看到终端输出两个软件包信息,分别是redhat-config-nfs-1.0.4-5和nfs-utils-1.0.1-2.9,第一个是图形界面下配置NFS软件包组件,第二个是NFS后台程序的核心组件,在安装系统时已经默认安装了,如果没有查询到可以通过下面的安装命令来进行手动安装。rootlocalhost root# rpm ivh redhat-config-nfs-1.0.4-5.noarch.rpmrootlocalhost root# rpm ivh nfs-utils-1.0.1-2.9.i386.rpm图形界面配置NFS接下来通过图形界面配置NFS,使其可以正常被挂载访问,通过“主菜单”“系统设置”“服务器设置”“NFS服务器”打开NFS图形配置界面,创建NFS共享,如下图所示图3 NFS配置图形界面在下图“NFS服务器配置”对话框点击“添加”选项,来添加一个NFS共享图4 添加一个NFS共享在下图“添加NFS共享”窗体的“基本权限”下选择“读/写”,然后点击“浏览”选择要共享的目录图5选择“读/写”并点击“浏览”选择“/home/txmcu”作为NFS的共享目录,按照下面贴图依次设置好,最后确定图6 选择共享目录图7 设置提供共享的主机图8 “按要求同步写操作”图9 “把远程根用户当作本地根用户”图10 “确定”并退出配置界面首先在Linux系统下进入目录“/home/txmcu”查看共享目录下当前的文件有哪些,ls命令执行之后,终端下打印出了现有的文件。rootlocalhost root# cd /home/txmcurootlocalhost txmcu# ls图11 查看共享目录当中现有的文件共享主机输出目录首先查询portmap和NFS的运行状态。rootlocalhost root# service portmap statusrootlocalhost root# service nfs status图12 查询portmap和NFS状态可以看到portmap正在运行,而NFS没有开启,设置好上面的NFS共享,重启portmap并开启NFSrootlocalhost root# service portmap restartrootlocalhost root# service nfs start图13 重启portmap,开启NFS通过本机做一个测试,首先在mnt目录下创建一个NFS目录,进入该目录查看是否有文件,用到的命令依次列举出来rootlocalhost root# mkdir /mnt/nfs /创建目录rootlocalhost root# cd /mntrootlocalhost mnt# lsrootlocalhost mnt# cd nfs图14 创建一个nfs目录通过命令将共享出来的目录挂载到刚刚创建的NFS目录,并进入该目录查看,可以看到,终端列出了“/home/txmcu”目录下的所有文件,挂载成功,在通过命令卸载,卸载命令不能在nfs目录内执行,在系统内的挂载成功完成。rootlocalhost root# mount t nfs 34:/home/txmcu /mnt/nfsrootlocalhost root# cd /mnt/nfsrootlocalhost nfs# lsrootlocalhost root# umount /mnt/nfs /卸载命令图15 挂载NFS共享目录连接好开发板并启动系统,在mnt目录下已经建立了一个nfs目录,主机共享出来的目录就挂载到此目录下,如下图所示,用到的命令与上图类似,这里不再列举,从下图可以看到,挂载没有成功;加上“-o nolock” 重新挂载,如图17,挂载成功。图16 挂载失败图17 挂载成功如果挂载过程出现下图所示的状况说明网络不通,也就是ping命令无法接收数据包,这也是本文头详细阐述ping过程的原因,网络畅通是NFS共享的前提。图18 问题1如果按照以上操作共享不了,无法挂载,则在Linux终端下输入setup命令,回车后进入配置界面rootlocalhost root#setup图19 终端下输入“setup”图20 选择“System services”并回车 如下图,找到并通过空格键选择“nfs”“nfslock”“portmap”之后按下“Tab”键选择“确定”后回车退出,下次NFS服务会随系统一同开启。图21

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论