这节我们介绍NFS的相关概念,以及如何配置NFS和在客户端中查看NFS。
  NFS的配置过程很简单。在服务器端中编辑/etc/exports文件,添加如下内容:
    /home/nfs-share    192.168.1.122 *(rw,sync)   
  然后开启NFS和portmap服务:
    /etc/init.d/nfs start           //用service nfs start也可以
    /etc/init.d/portmap start       //用service portmap stasrt也可以
  在客户端,用mount –t nfs 192.168.123:/home/nfs-share  /home/remote_file挂载服务器端的共享目录到本地的/home/remote-file挂载点,然后我们就可以在客户端上应用到远程主机上的/home/nfs-share目录了。想要系统在开机时自动挂载,修改/etc/fstab文件,把NFS服务器的共享目录添加进去就可以了,这个不用多说。
  如何知道远程主机上的共享目录情况呢?使用showmount命令,这个命令需要root权限。它有三个选项(记住这三个选项代表的含义:
    showmount –a IP    显示指定NFS服务器的客户端以及服务器端在客户端的挂载点
    showmount –d IP    显示指定NFS服务器在客户端的挂载点
    showmount –e IP    显示指定NFS服务器上的共享目录列表(或者叫输出列表)
  我们输入命令showmount –a 192.168.1.123:
 
  图片客户端中出现的mount clntudp_create: RPC: Program not registered错误是怎么回事?噢,我刚才重启了一下服务器端,重启后NFS服务没有开启。
  我们开启服务器端的NFS服务,再从客户端上查看一下NFS服务器的情况:
  linux NFS配置:NFS相关概念及其配置与查看_第1张图片
    Showmount –a显示出NFS服务器192.168.1.123的共享目录被客户端192.168.122挂载到/home中;
    Showmount –e显示出NFS服务器192.168.1.123上有两个共享目录:/tmp和/home/nfs-share
    Showmount –d显示出NFS服务器的共享目录被挂载到了/home这个挂载点上。
 
  刚才在重启NFS服务的时候,细心的话可以注意到,我们在输入命令/etc/init.d/nfs start开启nfs服务时,系统还自作主张地开启了NFS quotas等其它3个服务。 
linux NFS配置:NFS相关概念及其配置与查看_第2张图片
   怎么回事?我们只输入了一条启动NFS服务的命令,它怎么额外的启动了3个服务?后面的启动portmap服务又是怎么回事?
  我们首先要了解一点:NFS文件系统要提供服务单靠本身的NFS服务是不够的,还需要调用其它服务,这个其它服务就是RPC(remote procedure call,远程过程调用)服务和portmap服务。由于NFS服务本身不提供文件传输功能,我们要远程使用NFS文件系统就需要RPC服务的支持;而portmap服务用来为RPC服务进行动态端口分配和映射,所以portmap服务也是NFS服务所必须的。
    正是因为NFS的运行必须要使用RPC服务,所以一般把NFS服务看作RPC服务的一种,开启NFS服务其实就是在开启RPC服务。REDHAT安全指南在讲portmap服务时就说:“portmap 服务是用于 RPC 服务(如 NIS 和 NFS)的动态端口分配守护进程”,明显把NFS和NIS(network information service)看成了RPC服务的其中两个应用。
   那么NFS使用了RPC的哪些服务呢?rpc.nfsd服务和rpc.mountd服务。
    明白了这点,我们就明白为什么在开启nfs服务时,系统除了开启NFS  services还开启了rpc.nfsd和rpc.mountd,就是图片中的NFS daemon和NFS mountd。而至于NFS quotas是用来管理目录配额的,它并不是必需的。也就明白了安装NFS服务时所需要的两个软件包nfs-utils和portmap:Nfs-utils软件包提供了rpc.nfsd和rpc.mountd两个RPC的daemon(守护进程)程序,而portmap软件包提供了portmap程序。
  需要注意的是:很多书上都说在启动NFS服务时,要先启动portmap服务,然后再启动NFS服务,而关闭NFS服务时,要先关闭NFS服务,portmap服务不一定非得关掉,因为有可能还有其它服务需要它的支持,很多文章里的操作也是先启动portmap,然后启动NFS。我这里没有按照顺序操作,虽然也没出什么问题,但最好还是按照大家普遍的顺序进行操作。
  我们查看一下服务的启动情况:
 
  下节我们们讲如何开机自动启动NFS。