linux 利用nfs挂载实现访问发布分离
首先说明一下我的环境是centos6.5,现在有两天服务器 192.168.1.164,192.168.1.165
其中164位访问服务器,165位发布服务器,现在利用nfs挂载的方式让165修改的一些目录能够同步到164让其访问,
被同步端:
1.首先确定服务器有没有安装nfs,rpcbind服务:service nfs/rpcbind status,这里假设安装了。
2.chkconfig --list|grep nfs 查看nfs有没有自启动
3.chkconfig --level 2345 nfs on
4.chkconfig --list|grep rpcbind
5.chkconfig --level 2345 on;
6.然后修改配置文件/etc/exports(被客户端同步的目录 服务器要存在这个目录 不然会出错)
/cicro/nfstest 192.168.1.164(ro,sync)
其中括号内参数如下:
rw:可读写的权限;
ro:只读的权限;
no_root_squash:登入到NFS主机的用户如果是root,该用户即拥有root权限;
root_squash:登入NFS主机的用户如果是root,该用户权限将被限定为匿名使用者nobody;
all_squash:不管登陆NFS主机的用户是何权限都会被重新设定为匿名使用者nobody。
anonuid:将登入NFS主机的用户都设定成指定的user id,此ID必须存在于/etc/passwd中。
anongid:同anonuid,但是变成group ID就是了!
sync:资料同步写入存储器中。
async:资料会先暂时存放在内存中,不会直接写入硬盘。
insecure:允许从这台机器过来的非授权访问。
7.然后exportfs -r 重新加载exports文件
8.为nfs相关服务设置端口-》/etc/sysconfig/nfs 不要让他每次动态分配
QUOTAD_PORT=10001
LOCKD_TCPPORT=10002
LOCKD_UDPPORT=10002
MOUNTD_PORT=10003
STATD_PORT=10004
9.编辑防火墙开放这些端口
首先确定服务器有没有安装nfs,rpcbind服务:service nfs/rpcbind status
-A INPUT -p tcp -m state --state NEW -m tcp --dport 10001:10004 -j ACCEPT
#-A INPUT -p tcp -m state --state NEW -m upd --dport 10001:10004 -j ACCEPT
udp因为我的服务器没有相关的lib文件 我就注释了 到最后验证不影响。
10重启防火墙 service iptables restart
服务器的设置到此结束
客户端:
1:先备份 然后新建和服务器配置文件中一样的目录
/cicro/nfstest
2:mout -t nfs 192.168.1.165:/cicro/nfstest /cicro/nfstest
卸载 umount -l /cicro
可以把这个配置到/etc/fstab UUID=b82dcc19-c6e5-4ffb-84b0-6e3a656e1ea7 /cicro ext4 defaults 0 0