安装NFS服务,须要安装nfs-utils和rpcbind,NFS的RPC服务,在Centos5.X下名称为portmap,在Centos6.X下名称为rcpbind。缓存
1.查询nfs服务和rpc服务是否安装安全
[root@nfs-server ~]# rpm -qa|grep nfs [root@nfs-server ~]# rpm -qa|grep rpcbind
2.使用YUM安装nfs和rpcbind
bash
[root@nfs-server ~]# yum -y install nfs*
3.启动nfs服务,在启动nfs服务以前,必定要先启动rpcbind,而后再启动nfs服务器
[root@nfs-server ~]# /etc/init.d/rpcbind start
查看rpc信息
网络
[root@nfs-server ~]# rpcinfo -p localhost program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper
[root@nfs-server ~]# /etc/init.d/nfs start Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS mountd: [ OK ] Starting NFS daemon: [ OK ] Starting RPC idmapd: [ OK ]
启动nfs服务之后,再查看rpcinfo信息。app
[root@nfs-server ~]# rpcinfo -p program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100011 1 udp 875 rquotad 100011 2 udp 875 rquotad 100011 1 tcp 875 rquotad 100011 2 tcp 875 rquotad 100005 1 udp 35606 mountd 100005 1 tcp 38238 mountd 100005 2 udp 33761 mountd 100005 2 tcp 41083 mountd 100005 3 udp 47608 mountd 100005 3 tcp 35056 mountd 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 2 tcp 2049 nfs_acl 100227 3 tcp 2049 nfs_acl 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 2 udp 2049 nfs_acl 100227 3 udp 2049 nfs_acl 100021 1 udp 34627 nlockmgr 100021 3 udp 34627 nlockmgr 100021 4 udp 34627 nlockmgr 100021 1 tcp 46375 nlockmgr 100021 3 tcp 46375 nlockmgr 100021 4 tcp 46375 nlockmgr
4.配置共享目录/share,容许192.168.10.*访问异步
[root@nfs-server ~]# mkdir /share //建立共享目录 [root@nfs-server ~]# ll -d /share/ //查看目录信息 drwxr-xr-x. 2 root root 4096 Dec 30 13:55 /share/ [root@nfs-server ~]# chown -R nfsnobody:nfsnobody /share/ //更改目录所属用户和所属组 [root@nfs-server ~]# ll -d /share/ drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Dec 30 13:55 /share/ [root@nfs-server ~]# cat /etc/exports /share 192.168.10.*(rw,sync)
5.查看NFS共享目录信息async
[root@nfs-server ~]# showmount -e 192.168.10.1 Export list for 192.168.10.1: /share 192.168.10.*
6.NFS客户端挂载共享目录/sharetcp
[root@nfs-server ~]# mount -t nfs 192.168.10.1:/share /mnt [root@nfs-server ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_software-lv_root 18G 1.5G 15G 9% / tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 477M 28M 424M 7% /boot 192.168.10.1:/share/ 18G 1.5G 15G 9% /mnt
7.NFS客户端排错思路ide
测试客户端与服务端网络是否能否,如在客户端使用ping IP地址
在服务端本身挂载看看是否可以正常挂载
检查服务端防火墙规则,初学者能够选择直接关闭防火墙
8.管理NFS共享目录
exportfs命令能够导出NFS服务器上的共享目录、显示共享目录,或者不导出共享目录。
命令语法:
exportfs [选项] [目录]
选项 |
含义 |
-a |
导出或不导出全部的目录 |
-v |
显示导出列表的同时,也显示导出选项的列表 |
-u |
不导出指定的目录。当和-a选项一块儿时,不导出全部的目录 |
-f |
指定一个新的导出文件,而不是/etc/exports文件 |
-r |
从新导出全部的目录 |
-o<选项> |
指定导出选项列表 |
查看NFS共享目录信息
showmount [选项] [NFS服务器]
选项 |
含义 |
-a |
同时显示客户端的主机名或IP地址以及所挂载的目录 |
-e |
显示NFS服务器的导出列表 |
-d |
只显示已经被挂载的NFS共享目录信息 |
9.NFS配置文件权限参数说明
参数名称 |
参数用途 |
rw |
共享目录具备读写权限 |
ro |
共享目录具备只读权限 |
sync |
请求或写入数据时,数据同步写入到NFS Server硬盘中。 数据安全不会丢,缺点,性能比不启用该参数要差。 |
async |
请求或写入数据时,先返回请求,再将数据写入到内存缓存和硬盘中, 即异步写入数据。此参数能够提高NFS性能,可是会下降数据的安全。 所以,通常状况下建议不用,若是NFS处于瓶颈状态,而且容许数据丢 失的话能够打开此参数提高NFS性能。 写入时数据会先到内存缓冲区,等硬盘有空档再写入磁盘,这样能够提 升写入效率!风险为若服务器宕机或不正常关机,会损失缓冲区未写入 硬盘的数据(解决办法:服务器主板电池或加UPS不间断电源)! |
root_squash |
root用户的全部请求映射成如nfsnobody(匿名)用户同样的权限 |
no_root_squash |
关闭root_squash |
all_squash |
映射全部的UID和GID为匿名用户 |
no_all_squash |
保留共享文件的UID和GID(默认) |
anonuid |
指定NFS服务器/etc/passwd文件中匿名用户的UID |
anongid |
指定NFS服务器/etc/passwd文件中匿名用户的GID |
secure |
NFS经过1024如下的安全TCP/IP端口发送 |
insecure |
NFS经过1024以上的端口发送 |
wdelay |
若是多个用户要写入NFS目录,则归组写入(默认) |
no_wdelay |
若是多个用户要写入NFS目录,则当即写入,当使用async时,不须要设置 |
subtree_check |
若是共享/usr/bin之类的子目录时,强制NFS检查父目录的权限 |
no_subtree_check |
和subtree_check相对,不检查父目录权限 |
hide |
在NFS共享目录中不共享其子目录 |
nohide |
共享NFS目录的子目录 |
mp |
若是它已经成功挂载,那么使得它只导出一个目录 |
fsid |
NFS须要可以识别每一个它导出的文件系统。一般状况下它会为文件系统使用一 个UUID,或者该设备保持文件系统的设备号 |