NFS服务器的搭建与使用,实现数据同步

NFS的基本架构,如下图所示:

NFS服务是基本RPC协议的,所以安装NFS的前提要安装RPC协议,就像java语言一定要基于jdk一样!

下面的搭建centos-1作为服务端模拟A服务器,centos-2模拟B和C的服务器!!现在的NFS安装的时候好像已经自动安装了rpcbind的包了。安装服务的时候我们只要安装nfs-utils就可以了

安装nfs:yum -y install nfs-utils
安装完成后配置他的权限文件,注意:权限文件是要自己编写的。且他的文件名为exports。且在/etc下
vim /etc/exports
/data/logs/nginx/   192.168.1.232(rw,sync,all_squash,anonuid=1000,anongid=1000)  #共享的目录,允许的客户端,权限
配置文件没错误的话,这样我们就可以启动nfs的服务了.我们的nfs服务端就搭建完成了。
systemctl start nfs

nfs的权限详解

rw 读写
ro 只读
sync 同步模式,内存数据实时写入磁盘
async 非同步模式
no_root_squash 客户端挂载NFS共享目录后,root用户不受约束,权限很大
root_squash 与上面选项相对,客户端上的root用户收到约束,被限定成某个普通用户
all_squash 客户端上所有用户在使用NFS共享目录时都被限定为一个普通用户
anonuid/anongid 和上面几个选项搭配使用,定义被限定用户的uid和gid

下面是客户端的安装:同样的安装nfs-utils这个包。然后我们可以把服务端共享出来的目录挂载到客户端的机子上

yum -y install nfs-utils      
# 可以把showmount命令安装上,这个命令是查看服务端的挂载目录的:yum -y install showmount
安装后无需启动服务,我们可以直接把查看到的目录挂载到本机来。比如我要把他挂载到我的/tmp目录下
mount -t nfs 192.168.1.130:/var/log /tmp # -t是指定他的类型。

exportfs必须与nfs的命令一起使用。这个命令是用来重启nfs的。注意:不能随便使用systemctl  restart  nfs命令。这样会导致客户的挂载点变成D状态,D状态很难杀死,且有可能使你的机器在挂机。

常用选项
-a 全部挂载或者全部卸载
-r 重新挂载
-u 卸载某一个目录
-v 显示共享目录

 假如我修改了/etc/exports的配置文件。配置文件加多了一个共享条件,我们重启服务就可以用exportfs这一条命令了

exportfs  -arv        这条命令非常的重要,如果不小心用到上面 的命令了。会导致你的客户端产生D状态。你会死的很惨的

【end】

猜你喜欢

转载自www.cnblogs.com/yeyu1314/p/10296906.html