nfs工作原理
- RPC,Remote Procedure Call Protocol,远程过程调用协议,是实现本地调用远程主机实现系统调用的协议
- portmapper:负责分配RPC服务器的端口,并在客户端请求时,负责响应目的RPC服务器端口返回给客户端,工作在tcp与udp的111端口上
- mountd:是nfs服务的认证服务的守护进程,客户端在收到返回的真正端口时,就会去连接mountd,认证取得令牌
- nfsd:nfs的守护进程,负责接收到用户的调用请求后与内核发出请求并得到调用结果响应给用户
- idmapd:是NFS的一个程序,用来负责远程客户端创建文件后的权限问题
nfs主要文件
-
/etc/exports 主配置文件
-
/usr/sbin/exportfs 维护NFS共享资源的指令,一般用于NFS服务器端
-
/usr/sbin/showmount 查看NFS共享出来的目录资源,一般用于NFS客户端
-
/var/lib/nfs/xtab NFS的日志文件,主要记录曾经连入NFS服务器端的客户端信息
示例
要求
- 作为一个网络文件共享存储
环境
系统 | IP | 软件 | 备注 |
---|---|---|---|
Server_centos7 | 192.168.11.140 | rpcbind nfs-utils | 关闭防火墙和SElinux |
Client_centos7 | 192.168.11.141 | rpcbind | null |
操作步骤
Server端
-
安装软件
]# yum install rpcbind nfs-utils -y
-
编辑/etc/exported
]# vim /etc/exports /data/nfs 192.168.11.141(rw,no_all_squash,sync)
-
创建共享目录
]# mkdir -p /data/nfs ]# chmod 777 /data/nfs
Client端
-
安装软件
]# yum install rpcbind
-
创建挂载点
]# mkdir -p /data/nfs
-
挂载
]# mount -t nfs 192.168.11.140:/data/nfs /data/nfs ]# df -h ... 192.168.11.140:/data/nfs 18G 2.1G 16G 12% /data/cnfs