NFS 配置
- 参考资料
- 安装(一般系统已默认安装)
 centos 5 :yum -y install nfs-utils portmap 
 centos 6(在CentOS 6.3当中,portmap服务由rpcbind负责) :yum -y install nfs-utils rpcbind 
- 系统进程
	- nfsd : 基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器
- mountd : 它是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。
- portmap : 主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。
 
- 文件
	- /etc/exports : NFS服务的主要配置文件
- /usr/sbin/exportfs : NFS服务的管理命令
- /usr/sbin/showmount : 客户端的查看命令
- /var/lib/nfs/etab : 记录NFS分享出来的目录的完整权限设定值
- /var/lib/nfs/xtab : 记录曾经登录过的客户端信息
 
- 服务器端配置
	- 创建共享目录[root@centos2 /]# mkdir /usr/local/test 
- /etc/exports配置# 增加一行: /usr/local/test/ 192.168.1.226 (rw,no_root_squash,no_all_squash,sync) # 配置文件说明: /usr/local/test/ : 共享的目录,使用绝对路径。 192.168.1.226 : 客户端的地址,地址可以是一个网段,一个IP地址或者是一个域名,域名支持通配符,如:*.youxia.com (rw,no_root_squash,no_all_squash,sync) :客户端权限,地址与权限中间没有空格, ## 权限说明: rw:read-write,可读写; ro:read-only,只读; sync:文件同时写入硬盘和内存; async:文件暂存于内存,而不是直接写入内存; no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。 root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份; all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限; anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定; anongid:匿名用户的GID值。
 
- 创建共享目录
- NFS服务器启动
	- 手动启动
 centos 5:[root@centos2 /]# service portmap start [root@centos2 /]# service nfs start 
 centos6:[root@centos2 /]# service rpcbind start [root@centos2 /]# service nfs start 
- 查询NFS服务器状态service portmap status service nfs status 
- 停止NFS服务器service nfs stop service portmap stop 
- 设置自启动:设置系统在指定的运行级别自动启动portmap和nfs服务
	- 自启动chkconfig --list portmap chkconfig --list nfs 
- 设置portmap和nfs服务在系统运行级别3和5自动启动chkconfig --level 35 portmap on chkconfig --level 35 nfs on 
 
- 自启动
 
- 手动启动
- 客户端挂载
	- 创建需要挂载的目录[root@localhost ~]# mkdir /usr/local/test 
- 测试挂载[root@localhost ~]# showmount -e 192.168.1.225 Export list for 192.168.1.225: /usr/local/test 192.168.1.226 
- 挂载[root@localhost ~]# mount -t nfs 192.168.1.225:/usr/local/test /usr/local/test 
 
- 创建需要挂载的目录
- 解除挂载[root@localhost ~]# umount -v /usr/local/test 
- 服务器端防火墙设置(NFS 开启防墙配置)
	- 修改/etc/service,添加以下内容(端口号必须在1024以下,且未被占用)# Local services mountd 1011/tcp #rpc.mountd mountd 1011/udp #rpc.mountd rquotad 1012/tcp #rpc.rquotad rquotad 1012/udp #rpc.rquotad
- 重起NFS服务service nfs restart 
- 查询哪些端口被NFS占用rpcinfo -p # 如果找不到rpcinfo命令,请尝试: /usr/sbin/rpcinfo -p 
- 添加防火墙例外
 将上述rpcinfo显示的nfs服务端口(portmapper, nlockmgr, rquotad, nfs, mountd)在防火墙中设置为例外,可用GUI设置
 
- 修改/etc/service,添加以下内容(端口号必须在1024以下,且未被占用)