一、rpm包准备
需要安装nfs-utils和portmap程序,使用rpm –q可以查看是否安装
rpm -q nfs-utils portmap
如果没有安装,需要使用下面命令安装(默认情况都是安装)
yum install nfs-utils
yum install portmap
二、Server端
1、编辑/etc/exports文件
设置共享/tmp/nfs目录给192.168.11.12的用户,具有读写权限
/tmp/nfs 192.168.11.12(rw,sync)
设置共享目录/mnt/sda4/share/a,仅192.168.23.129主机允许访问此共享目录,具有读写权限
/mnt/sda4/share/b 192.168.23.129(rw) *(ro)
设置共享目录/mnt/sda4/share/b,192.168.23.129可以读写该共享目录,其他主机只可以读取该共享目录
/mnt/sda4/share/d 192.168.23.0/24(rw)
设置共享目录/mnt/sda4/share/d,仅有192.168.23.0/24网段的主机才可访问和读写此目录文件
说明:
Rw:read-write可读写的权限
Ro:read-only只读权限
Sync:数据同步写入到内存与硬盘中
Async:数据先暂存于内存中,而非直接写入硬盘
2.启动portmap服务:
service portmap start[restart]
3.启动NFS服务:
service nfs start[restart]
3、exportfs的用法
如果我们修改了/etc/exports后,并不需要重启nfs服务,只要用exportfs重新扫描一次/etc/exports,并且重新加载即可
语法: exportfs [-aruv]
-a: 全部挂载(或卸载) /etc/exports档案内的设定
-r: 重新挂载/etc/exports里面的设定,也同步的更新/etc/exports和/var/lib/nfs/xtab里面的内容
-u:卸载某一目录
-v:在export的时候,将分享的目录显示到荧屏上.
#exportfs -rva //重新export一次
#exportfs -auv //全部卸载
4、补充说明:
4.1)启动NFS只需启动portmap和NFS服务即可。如果需要启动数据一致性检查,则需启动nfslock服务。
使用netstat–tnlu可以查看nfs开放了哪些端口。Portmap的端口为111,nfs的端口为2049
[root@CC-Node-01 nfs]# rpcinfo -p
program vers proto port
100000 2 tcp 111 portmapper
100000 2 udp 111 portmapper
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100021 1 udp 46231 nlockmgr
100021 3 udp 46231 nlockmgr
100021 4 udp 46231 nlockmgr
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100021 1 tcp 46322 nlockmgr
100021 3 tcp 46322 nlockmgr
100021 4 tcp 46322 nlockmgr
4.2)如果portmap和nfs服务都是正常运行,修改了/etc/exports中的配置,只需要exportfs -rva 重新加载一次即可
三、Client端
1.启动portmap服务:
service portmap start[restart]
2.挂载服务器端的共享目录(假设服务器端192.168.11.11):
[root@ECP-UC-DB1 tmp]# mount -t nfs 192.168.11.11:/tmp/nfs /tmp/nfs
[root@ECP-UC-DB1 nfs]# df -h
192.168.11.11:/tmp/nfs
19G 15G 3.6G 81% /tmp/nfs
3、修改nfs
[root@ECP-UC-DB1 tmp]# umount /tmp/nfs
4、设置成开机启动挂载
修改/etc/fstab文件
192.168.11.11:/tmp/nfs /tmp/nfs nfs defaults,rw 0 0
5、补充说明:
一开始配置完Server,Client端mount后只能读,写不了,在server上加上wx权限后问题就解决了