说明:
NFS服务器端
操作系统:Red Hat 5.4 64位
IP :10.15.62.67
NFS网络文件服务器共享目录:/data
NFS客户端
操作系统:Red Hat 5.4 64位
IP :10.15.62.70
NFS网络文件共享挂载目录:/data
一、关闭SELINUX
cat /etc/selinux/config | grep "^SELINUX=" | sed 's/\(SELINUX=\).*/\1disabled/g'
二、安装NFS服务器
查询并卸载是否安装有nfs-utils portmap
rpm -q nfs-utils portmap && yum remove nfs-utils portmap -y
安装nfs-utils portmap
yum install nfs-utils portmap
修改/etc/sysconfig/nfs文件开启并修改如下字段
RQUOTAD_PORT=875
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
STATD_PORT=10000
STATD_OUTGOING_PORT=10004
编辑/etc/exports文件添加如下信息
/data 10.15.62.67/24(rw,sync,no_subtree_check)
相关参数说明:
/data:NFS共享目录
10.15.62.67/24:允许访问共享目录的IP段
rw:读写权限
ro:只读权限
sync:实时同步数据
async:异步同步数据
no_subtree_check:不检查目录权限,提高数据读取效率
no_root_squash:以root身份登录时他的权限将被压缩为nobody权限
all_squash:不论登入NFS的身份为谁他的权限都将被压缩为nobody权限
anonuid:设置匿名登录的用户uid
anongid:设置匿名登录的用户gid
启动服务
service portmap start
service nfslock start
service nfs start
chkconfig portmap on
chkconfig nfslock on
chkconfig nfs on
注意NFS服务在启动时有顺序的,关闭也是有顺序的。
service nfslock stop
service nfs stop
service portmap stop
[root@localhost ~]# rpcinfo -p 10.15.62.67
program vers proto port
100000 2 tcp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 10000 status
100024 1 tcp 10000 status
100011 1 udp 875 rquotad
100011 2 udp 875 rquotad
100011 1 tcp 875 rquotad
100011 2 tcp 875 rquotad
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100021 1 udp 32769 nlockmgr
100021 3 udp 32769 nlockmgr
100021 4 udp 32769 nlockmgr
100021 1 tcp 32803 nlockmgr
100021 3 tcp 32803 nlockmgr
100021 4 tcp 32803 nlockmgr
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100005 1 udp 892 mountd
100005 1 tcp 892 mountd
100005 2 udp 892 mountd
100005 2 tcp 892 mountd
100005 3 udp 892 mountd
100005 3 tcp 892 mountd
端口说明:
portmap或者rpcbind(centos 6.x)使用:tcp/udp 111
nfs使用:tcp/udp 2049
mountd使用:tcp/udp 892
rquotad使用:tcp/udp 875
status使用:tcp/udp 10000-10004共五个端口
nlockmgr使用:tcp/32803 udp/32769
查看服务器端的共享目录
[root@localhost ~]# showmount -e 10.15.62.67
Export list for 10.15.62.67:
/data 10.15.62.67/24
NFS客户端:
关闭SELINUX
cat /etc/selinux/config | grep "^SELINUX=" | sed 's/\(SELINUX=\).*/\1disabled/g'
查询并卸载是否安装有nfs-utils portmap
rpm -q nfs-utils portmap && yum remove nfs-utils portmap -y
安装nfs-utils portmap
yum install nfs-utils portmap
启动服务
service portmap start
service nfslock start
service nfs start
chkconfig portmap on
chkconfig nfslock on
chkconfig nfs on
注意NFS服务在启动时有顺序的,关闭也是有顺序的。
service nfslock stop
service nfs stop
service portmap stop
mount -t nfs -o soft,intr,bg,rw,rsize=32768,wsize=32768 10.15.62.67:/data /data
此时在服务器端的/data目录里创建个文件,在客户端查看是否同步
umount
在/etc/fstab里面添加如下行
10.15.62.67:/data /data nfs soft,intr,bg,rw,rsize=32768,wsize=32768 0 0
mount -a
此时在进入客户端的/data目录里面有没有刚在服务端创建的文件
此时你的NFS服务已经完成
如果你工作环境中有防火墙,那么你要在你的防火墙列表中添加如下规则
-A INPUT -m tcp -p tcp --dport 111 -j ACCEPT
-A INPUT -m tcp -p udp --dport 111 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 2049 -j ACCEPT
-A INPUT -m tcp -p udp --dport 2049 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 875 -j ACCEPT
-A INPUT -m tcp -p udp --dport 875 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 892 -j ACCEPT
-A INPUT -m tcp -p udp --dport 892 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 32803 -j ACCEPT
-A INPUT -m tcp -p udp --dport 32769 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 10000 -j ACCEPT
-A INPUT -m tcp -p udp --dport 10000 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 10001 -j ACCEPT
-A INPUT -m tcp -p udp --dport 10001 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 10002 -j ACCEPT
-A INPUT -m tcp -p udp --dport 10002 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 10003 -j ACCEPT
-A INPUT -m tcp -p udp --dport 10003 -j ACCEPT
-A INPUT -m tcp -p tcp --dport 10004 -j ACCEPT
-A INPUT -m tcp -p udp --dport 10004 -j ACCEPT