NFS 系统搭建 - 成功

NFS是Network File System的缩写,即文件系统。客户端通过挂载的方式将NFS服务器端共享的数据目录挂载到本地目录下。

工作流程

1、由程序在NFS客户端发起存取文件的请求,客户端本地的RPC(rpcbind)服务会通过网络向NFS服务端的RPC的111端口发出文件存取功能的请求。
2、NFS服务端的RPC找到对应已注册的NFS端口,通知客户端RPC服务。
3、客户端获取正确的端口,并与NFS daemon联机存取数据。
4、存取数据成功后,返回前端访问程序,完成一次存取操作。

所以无论客户端,服务端,需要使用NFS,必须安装RPC服务。

安装

2. 查看是否安装NFS
rpm -qa nfs-utils rpcbind
yum install nfs-utils rpcbind 3. 启动rpcbind服务 systemctl status rpcbind.service # 查看服务状态
systemctl restart rpcbind.service # 启动rpc服务

NFS 系统搭建 - 成功

lsof -i :111 # 查看rpc
netstat -lntup|grep rpcbind 如果出现-bash未找到命令可执行下面命令
yum install net-tools lsof

NFS 系统搭建 - 成功

rpcinfo -p localhost # 查看nfs服务向rpc注册的端口信息

chkconfig --list rpcbind # 检查rpcbind是否开机启动

NFS 系统搭建 - 成功

5. 启动NFS服务
systemctl start nfs.service
systemctl status nfs.service # 查看状态
rpcinfo -p localhost # 再次查看rpc注册的端口信息

111 端口起来了

NFS 系统搭建 - 成功

6、NFS常见进程详解
ps -ef|egrep "rpc|nfs" nfsd(rpc.nfsd)主进程,主要是管理客户端能否登入服务端,登入者ID判别。
mountd(rpc.mountd)管理NFS文件系统,登入者的权限管理
rpc.lockd(非必要)用来锁定文件,用于客户端同时写入
rpc.statd(非必要)检查文件一致性
rpc.idmapd 名字映射后台进程

NFS 系统搭建 - 成功

7、配置NFS开机自启动
chkconfig rpcbind on
chkconfig nfs on
chkconfig --list rpcbind
chkconfig --list nfs 8、NFS服务端配置
vi /etc/exports
exports文件配置格式:NFS共享的目录 NFS客户端地址1(参数1,参数2,...) 客户端地址2(参数1,参数2,...) 说明:
NFS共享目录:要用绝对路径,可被nfsnobody读写。
NFS客户端地址:
指定IP: 192.168.0.1
指定子网所有主机: 192.168.0.0/24
指定域名的主机: test.com
指定域名所有主机: *.test.com
所有主机: * 参数:
ro:目录只读
rw:目录读写
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性
async:将数据先保存在内存缓冲区中,必要时才写入磁盘
all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody)
no_all_squash:与all_squash取反(默认设置)
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置)
no_root_squash:与rootsquash取反
anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx)
anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户 例如:
/data/tmp 10.211.55.0/24(rw,sync,all_squash)

NFS 系统搭建 - 成功

创建需要共享的目录
mkdir -p /data/tmp
chown nfsnobody.nfsnobody /data/tmp 重新加载nfs配置
exportfs -rv 查看nfs服务器挂载情况
showmount -e localhost

NFS 系统搭建 - 成功

9、挂载测试
mkdir -p /data/tmp2
mount -t nfs 10.211.55.4:/data/tmp /data/tmp2 10、查看挂载
df -h

NFS 系统搭建 - 成功

11、在tmp下创建文件
touch /data/tmp/1.txt 查看tmp2下是否有文件
ls /data/tmp2

NFS 系统搭建 - 成功


卸载挂载
umount /data/tmp2

参考

centos7下NFS使用与配置

上一篇:Nim函数调用的几种形


下一篇:python 简单的猜数字游戏