【Linux操作系统】第8讲 网络文件系统NFS.pptx

【Linux操作系统】第8讲 网络文件系统NFS.pptx

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 网络文件系统NFS ;8.1 NFS基本原理; 这样在主机B上的用户就可以使用/mnt/nfs下的文件,而实际上用户使用的是主机A上的目录/test。也就是说,用户可以以访问本地文件的方式访问远程主机上的文件。 NFS由SUN公司开发,它最终被IETF所接受,纳入RFC成为一种文件服务标准,是分布式计算机系统的一个组成部分。网络文件系统有以下优点: ; (1) 被所有用户访问的数据可以存放在一台中央的主机上,其他不同主机上的用户可以通过NFS访问同一中央主机上的数据; (2) 客户访问远程主机上的文件是透明的,和访问本地主机上的文件是一样的; (3) 远程主机上文件的物理位置发生变化(如从一台主机移动到另一主机上)也不会影响客户访问方式的变化。 ; 8.1.2 NFS的工作原理 NFS是基于客户/服务器模式的。NFS服务器是输出一组文件的计算机,而客户是访问文件的计算机。客户和服务器通过远程过程调用(RPC,Remote Procedure Call)通信,当客户主机上的应用程序访问远程文件时,客户主机内核向远程服务器发送一个请求,客户进程被阻塞,等待服务器应答,而服务器一直处于等待状态,如果接收到客户请求,就处理请求并将结果返回客户机。NFS服务器上的目录如果可被远程用户访问,就称为“导出”(export);客户主机访问服务器导出目录的过程称为“安装”(mount),有时也称“挂接”或“导入”。NFS由许多组件共同协作完成,如图8-1所示。 ;; XDR(外部数据表示):在异构机器组成的网络上交换数据。 RPC协议:负责定义客户机和服务器之间的信息格式,NFS请求是以RPC包的形式发送的。 locked:RPC锁监控程序,实现NFS锁管理器(NLM,NFS Lock Manager)协议,NLM协议支持多个客户通过NFS一致性地锁定文件。 ;rpciod:NFS I/O监控程序。 knfsd:是NFS系统的核心,监听远程主机的RPC请求、根据NFS协议进行解释,它用RPC将响应返回客户机,并与NFS服务器上运行的其他组件通信如rpciod、rpc.locked和rpc.statd。 statd:NFS状态监控程序,利用网络状态监视协议(NSM)维护NFS锁的状态。 portmap:将RPC程序号与运行服务的实际端口相对应。 ;mountd:处理客户机??mount请求。 rquotad:提供NFS系统中用户的配额信息。 由于NFS有明确的服务器和客户角色之分,因此NFS的配置包括两个部分:NFS服务器的配置和NFS客户机的配置。 ;8.2 配置NFS服务器; 8.2.1 安装NFS 要使用NFS服务器或安装NFS服务软件包,可以用红旗3.0版的CD-ROM中的目录/Redflag/RPMS下的软件包“nfs-utils-0.3.1-8.i386.rpm”。安装之前请用以下命令检查该软件包是否已经安装: [root @redflag /root]#rpm –qa | grep nfs-utils nfs-utils-0.3.1-8 以上命令表明软件包已经安装,如果没有安装则用以下命令安装软件包(当然要先把CD-ROM mount上)。 ;[root @redflag /root]#mount /dev/cdrom [root @redflag /root]#cd /mnt/cdrom/RedFlag/RPMS [root @redflag /root]#rpm -ivh nfs-utils-0.3.1-8.i386.rpm ; 8.2.2 配置导出文件:/etc/exports /etc/exports文件是用来告诉Linux系统哪些文件系统或目录将为NFS客户导出,这个文件是一个文本文件,通常由管理员编辑。文件中以“#”号开头的行被忽略,长行可以用“\”分解为多行。语法如下: dir_name host1(opt1,opt2,……) host2(opt1,opt2,……) \ host3(opt2,……) ; 【实例8.1】 /home (ro) /test *(rw) 在/etc/exports文件中的每个项目以目录名开始,目录名dir_name就是要导出给NFS客户使用的目录,目录可以是某一文件系统的根,也可以不是文件系统的根。目录名之后可以列出多个或零

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档