NFS(NetworkFileSystem),网络文件系统,基于RPC实现在远程主机上完成读写功能,NFS服务端功能由Kernel中提供,所以只能在Linux、UNIX中使用,另外只能根据IP地址限制用户访问。
RPC (Remote Procedure Call),实现两个远程主机之间功能函数的调用、参数传递功能。在Linux中一些通用功能都被做成库,本地的应用程序需要使用这些功能时,直接调用即可,这就叫本地调用;本地所需要的库(功能函数)在远程主机上,这时候就可以使用RPC协议将调用请求、参数封装成报文在网络上传输,并且服务端能理解之后将调用请求在本地执行返回结果,这称为远程过程调用。很多服务都会基于RPC完成某些功能, 例如NFS服务就基于RPC调用远程 主机上的open() ,read(),write(),close()…等函数将执行结果返回本地,完成文件共享功能。
1. 服务端启动时将NFS功能(NFS daemons)像RPC进行注册端口。
2. 客户端通过RPC连接服务器获取NFS Daemon注册的端口。
3. 客户端连与NFS daemon进行联机,mountd对用户进行认证,nfs提供文件共享服务功能。
rpc.nfsd 提供NFS服务
rpc.mountd 用于验证用户是否有权限使用NFS
rpc.lockd与rpc.statd 用于锁定文件防止多个用户同时修改,导致文件混乱。
rpc.quota 用于设置NFS的磁盘配额。
rpc.bind 用于将服务与端口绑定
rpc.statd 通知NFS客户端什么时候一个NFS服务器非正常重启动.这个进程被nfslock服务自动启动,不需要用户的配置.
rpc.idmapd 用于将所有用户的ID映射为nobody用户
node1: NFS Server: 192.168.80.10
node2: NFS Client: 192.168.80.20
node1配置:
yum install nfs-utls -y
mkdir -pv /nfs/pub
echo "/nfs/pub 192.168.80.20(rw,async)" >>/etc/exports #限制只有Node2能登录
exportfs -ar
chown nfsnobody:nfsnobody -R /nfs/ #nfs客户端在系统上以nfsnobody用户身份操作文件
node2配置:
showmount -e 192.168.80.10
Export list for 192.168.80.10:
/nfs/pub 192.168.80
mount -t nfs --source 192.168.80.10:/nfs/pub /mnt/
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。