为了详细直观地说明nfs的工作过程,我们以sun工作站上的Unix操作系统为例,来说明nfs的具体工作过程,包括什么是文件阶层(hIErachies)、如何理解服务器和客户、服务器如何使其它机器共享其文件以及如何对远程机器上的文件阶层进行访问等。
1.文件阶层
当通过某安装点(mount point),从一个本地硬盘来安装一个文件系统时,可以将整个文件系统安装上并从它的根(root)来启动。例如,有两个文件系统root和usr,在不同的硬盘分区中。现在可以将usr文件系统安装到root文件系统的/usr目录上,并通过/usr目录对usr分区进行访问。
与上述原理相似,也可以将不同机器上的某个文件系统安装到本地硬盘上,甚至可以将另外一台机器上的文件系统中的某个目录安装到本地,而不必将整个文件系统都安装过来,如图3。
2.服务器与客户的概念
一个文件服务器是一台用于共享的机器,其它机器可以用它安装(mount)文件系统。一个客户机是一台至少从一个文件服务器继承了一个文件阶层的机器。任何机器(除非没有硬盘)都可以同时既作为nfs服务器,又作为nfs客户机来使用。
3.服务器与输出(exporting)
在一台unix工作站上,exportfs系统程序、rpc.mountd以及nfsd守候进程(deamon)一同来控制nfs。一旦nfs文件服务器将文件阶层进行输出(export)后,此服务器上的相应目录可由其它的机器来访问。文件服务器上的/etc/exporfs文件列出了这些可用的目录、可以访问它们的客户、以及存取权限。当你启动exportfs程序时,/etc/rc.1oca1就会自动激活exportfs程序。该程序检查 /etc/exportfs文件并通知服务器内核有关所输出的每个文件阶层的特权。在服务器启动后,还可以利用export命令将一个文件阶层分解成输出和非输出部分,或者改变一个已经输出的文件阶层的特权。
标签: