1、启动RPC服务;
2、启动NFS服务(同时向RPC 服务注册启动的端口);
3、客户端向RPC请求NFS服务;
4、RPC返回端到客户端;
5、客户端用返回的端口地址向NFS请求传输数据。
共享存储的好处:方便数据的查找与取出,缺点:存储服务器压力大,坏了丢失全部数据。
改名:# hostnamectl set-hostname nfs-server
# hostnamectl set-hostname nfs-client
# yum install -y nfs-utils rpcbind //两个节点都下
注:因为安装NFS就必须依赖RPC,所以运行NFS就必须下载RPC。
在nfs-server节点上创建一个用于共享的目录:
# mkdir /mnt/test
编辑NFS配置文件/etc/exports:
配置文件说明:
l /mnt/test:为共享目录(若没有这个目录,请新建一个)。
l 192.168.200.0/24:可以为一个网段,一个IP,也可以是域名。域名支持通配符,例如,*.qq.com。
l rw:read-write,可读写。
l ro:read-only,只读。
l sync:文件同时写入硬盘和内存。
l async:文件暂存于内存,而不是直接写入内存。
l no_root_squash:NFS客户端连接服务端时,如果使用的是root,那么对服务端共享的目录来说,也拥有root权限。显然开启这项是不安全的。
l root_squash:NFS客户端连接服务端时,如果使用的是root,那么对服务端共享的目录来说,拥有匿名用户权限,通常它将使用nobody或nfsnobody身份。
l all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端共享的目录来说,都拥有匿名用户权限。
l anonuid:匿名用户的UID(User Identification,用户身份证明)值,可以在此处自行设定。
l anongid:匿名用户的GID(Group Identification,共享资源系统使用者的群体身份)值。
# systemctl start rpcbind
# systemctl start nfs
# systemctl enable rpcbind
# systemctl enable nfs //启动NFS服务,并加入开机启动。
# showmount -e 192.168.200.10 //查看可挂载目录
可以看到共享的目录。
转到nfs-client节点:
# setenforce 0
# systemctl stop firewalld //关闭防火墙
# mount -t nfs 192.168.200.10:/mnt/test /mnt //进行NFS共享目录挂载,无提示信息则挂载成功。
# df -h //查看挂载情况,如下图所示:
可以看到nfs-server节点的/mnt/test目录已挂载到nfs-client节点的/mnt目录下。
在nfs-client节点的/mnt目录下创建一个abc.txt的文件并计算MD5值,命令如下:
在nfs-client节点下:
回到nfs-server节点下:
可以发现,在client节点创建的文件和server节点的文件是一样的。
原文:https://www.cnblogs.com/tcq123/p/14195471.html