Linux下的文件共享全攻略系列之二:NFS快速配置教程与安全策略
目前,研究者们开发了许多网络服务和协议来完成资源共享的功能.对于网络用户和管理员来说,他们希望得到免费和高效的服务,而这种需求的最好选择莫过于当前开源的操作系统Linux下的产品了.本专题从多个应用服务层面着重向读者们推荐几种实用的用于资源共享的技术及其软件.
在Linux下实现文件共享有多种方式,NFS就是其中之一.网络文件系统(NFS)协议是由Sun MicroSystem在20世纪80年代为了提供对共享文件的远程访问而设计和实现的.该协议采用Client/Server模型,通过使用Sun开发的远程过程调用协议(RPC Protocol)来实现运行在一台计算机上的程序来调用在另一台远程机器上运行的子程序,并且,它提供的外部数据表示(XDR)可以数据在不同平台上的计算机上进行交换.该协议可以在TCP协议或者是UDP协议上运行,而在此基础上,NFS在数据的传送过程中需要RPC命令得到确认,在需要的时候将会重传. 1、NFS原理NFS比较复杂,包括很多组件,通过特殊的协议进行交互.不同的组件在操作系统当中都使用不同的配置文件以及状态文件.下图说明了NFS的主要组件及配置文件. NFS分为服务器和客户机两部分,每个主机都有自己的内核级服务:外部数据表示(XDR,eXternal Data Representation)、远程过程调用(RPC,Remote Procedure Call)、I/O监控程序和锁监控程序.每个主机还有自己的用户级服务.内核级服务和用户级服务都依赖于主机的功能:NFS客户机或者是NFS服务器.当然,还要依赖于每个主机使用的不同功能的配置文件(如果是服务器,则用的是/etc/exports配置文件,如果是客户机,则用的是/etc/fstab配置文件).如果一台主机既是服务器又是客户机,那么它需要运行两个部分的服务. 在服务器端,portmap、 mountd、 nfsd三个监控程序将在后台运行.portmap监控程序用来注册基于rpc的服务.当一个RPC的监控程序启动的时候,它告诉portmap监控程序它在哪一个端口进行侦听,并且它在进行什么样的RPC服务.当一个客户机向服务器提出一个RPC请求,那么它就会和portmap监控程序取得联系以确定RPC消息应该发往的端口号.而Mountd监控程序的功能是来读取服务器端的/etc/exportfs文件并且创建一个将服务器的本地文件系统导出的主机和网络列表,因而客户机的挂接(mount)请求都被定位到mountd监控程序(daemon).当验证了服务器确实具有挂接所请求的文件系统的权限以后,mountd为请求的挂接点返回一个文件句柄.而nfsd监控程序则被服务器用来处理客户机端发过来的请求,服务器需要同时处理多个客户机的请求,在缺省情况下,在Linux当中将会自动启动八个nfsd线程.当然,如果NFS服务器特别忙的时候,系统有可能根据实际情况启动三十个线程. 2、NFS安装在网络环境下,使用yum安装NFS的命令如下: #yum –y install nfs3、NFS配置和使用 在安装好NFS后,需要对其进行配置才能正常使用,主要包括服务器配置和客户机配置两个步骤,下面详细对它们加以说明. 服务器配置 编辑/etc/exports,在文件中列出,要共享的目录.书写规则是:共享目录主机(参数).并且每条规则占据一行.例如: /mnt/mp3 192.168.10.168(ro,sync, no_root_squash) 上面的规则代表将/mnt/mp3目录以读写同步方式共享给主机192.168.10.168.如果登陆到NFS主机的用户是root,那么该用户就具有NFS主机的root用户的权限. 具体的可选参数如下所示:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |