网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。

组成:
         NFS至少有两个主要部分:一台服务器和一台(或者更多)客户机。客户机远程访问存放在服务器上的数据。为了正常工作,一些进程需要被配置并运行。
工作流程:
         (1)客户端会向服务器端的RPC(port 111)发出NFS文件存取功能的询问请求
         (2)服务器端找到对应的已注册NFSdaemon端口后,会通知客户端
         (3)客户端了解正确的端口后,就可以直接与NFSdaemon联机
应用
NFS 有很多实际应用。下面是比较常见的一些:
 
1.多个机器共享一台CDROM或者其他设备。这对于在多台机器中安装软件来说更加便宜跟方便。
2.在大型网络中,配置一台中心 NFS 服务器用来放置所有用户的home目录可能会带来便利。这些目录能被输出到网络以便用户不管在哪台工作站上登录,总能得到相同的home目录。
3.几台机器可以有通用的/usr/ports/distfiles 目录。这样的话,当您需要在几台机器上安装port时,您可以无需在每台设备上下载而快速访问源码。
nfs服务器的配置文件:
          /etc/exports
          # [共享目录]  [第一台主机]  [可用主机名] [可用通配符]
         [root@localhost ~]# vim /etc/exports

         权限
         ro:只读的权限
         rw:可读写的权限
         async:异步
         sync:同步
         root_squash:将root用户映射为来宾账号
         all_squash:所有身份都映射为来宾账号
         no_root_squash:登入nfs主机使用共享目录的用户
         anonuid,anongid:指定映射的来宾账号的uid和gid
重启服务器:

showmount:  
         -e nfs_server:查看nfs服务器“导出”的各文件系统
         -a nfs_server:查看nfs服务器所有被挂载的文件系统及其挂载的客户端对应关系列表
         -d    nfs_server:显示nfs服务器所有导出的文件系统中被客户端挂载了的文件系统列表
如果一个客户端在修改后,重启服务器,导致另一个客户端修改时出现崩溃情况,可以使用如下命令:
exportfs 命令:
         -a:跟-r或-u选项同时使用,表示重新挂载文件系统或取消所有文件系统
         -r:重新导出
         -u:取消导出
         -v:显示详细信息
        
 
* 注:让mountd和quotod等进程监听在固定端口,编辑位置文件/etc/sysconfig/nfs
         mountd_port=#
         quotad_port=#
         lockd_udpport=#
         lockd_tcpport=#