一、必须套件
要使用 NFS 必须要有两个套件才行,分别是:
NFS 主程序:nfs-utils
RPC 主程序:portmap
portmap
NFS 可以被视为一个 RPC 程序,而要启动任何一个 RPC 程序之前,我们都需要做好 端口映射工作才行,这个工作其实就是 portmap 这个服务所负责的!也就是说, 在启动任何一个 RPC server 之前,我们都需要启动 portmap 才行!
nfs-utils
就是提供 rpc.nfsd 及 rpc.mountd 这两个 NFS daemons 等套件,这个就是 NFS 的必要套件!不可缺少。
检测安装
使用 rpm -qa | grep nfs 与 rpm -qa | grep portmap
yum -y install portmap nfs*
二、服务器端的配置

1vim /etc/exports

/data/download 119.145.139.219(rw,sync,insecure)

(2)更改此目录的权限(我开始是755的权限,客户端死活不能写)

 chmod 777 /data/download/

(3)启动NFS服务

/etc/init.d/nfs restart

/etc/init.d/portmap restart

(4)加入开机启动

chkconfig nfs on

chkconfig portmap on  

echo "/etc/init.d/nfs start" >> /etc/rc.d/rc.local

echo "/etc/init.d/portmap start" >> /etc/rc.d/rc.local

以后若改动/etc/exports,直接exportfs -arv就行了。

三、客户端设置

(1)客户端也需要安装portmap软件,并启动portmap服务

yum -y install portmap 

/etc/init.d/portmap restart

2)客户端挂载

mount -t nfs 121.9.243.207:/data/download /data7/


3)加入开机启动

echo "mount -t nfs 121.9.243.207:/data/download /data7/" >> /etc/rc.d/rc.local

四、NFS相关参数

 ro 该主机对该共享目录有只读权限
 rw 该主机对该共享目录有读写权限
 root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户
 no_root_squash 客户机用root访问该共享文件夹时,不映射root用户
 all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户
 anonuid 将客户机上的用户映射成指定的本地用户ID的用户
 anongid 将客户机上的用户映射成属于指定的本地用户组ID
 sync 资料同步写入到内存与硬盘中
 async 资料会先暂存于内存中,而非直接写入硬盘
 insecure 允许从这台机器过来的非授权访问

 #exportfs用法
 -a :全部mount或者unmount /etc/exports中的内容
 -r :重新mount /etc/exports中分享出来的目录
 -u umount 目录
 -v :将详细的信息输出到屏幕上

具体例子:
exportfs -rv <==全部重新export一次!
exportfs -au <==全部都卸载了。

showmount a IP 显示指定NFS服务器的客户端以及服务器端在客户端的挂载点 showmount d IP 显示指定NFS服务器在客户端的挂载点

showmount e IP 显示指定NFS服务器上的共享目录列表(或者叫输出列表)

-a :这个参数是一般在NFS SERVER上使用,是用来显示已经mount上本机nfs目录的cline机器。
-e :显示指定的NFS SERVERexport出来的目录。