NFS服务

介绍

NFS(NetworkFileSystem),网络文件系统,基于RPC实如今远程主机上完成读写功能,NFS服务端功能由Kernel中提供,因此只能在Linux、UNIX中使用,另外只能根据IP地址限制用户访问。
RPC (Remote Procedure Call),实现两个远程主机之间功能函数的调用、参数传递功能。在Linux中一些通用功能都被作成库,本地的应用程序须要使用这些功能时,直接调用便可,这就叫本地调用;本地所须要的库(功能函数)在远程主机上,这时候就能够使用RPC协议将调用请求、参数封装成报文在网络上传输,而且服务端能理解以后将调用请求在本地执行返回结果,这称为远程过程调用。不少服务都会基于RPC完成某些功能, 例如NFS服务就基于RPC调用远程 主机上的open() ,read(),write(),close()…等函数将执行结果返回本地,完成文件共享功能。node

工做原理

NFS服务

1. 服务端启动时将NFS功能(NFS daemons)像RPC进行注册端口。
2. 客户端经过RPC链接服务器获取NFS Daemon注册的端口。
3. 客户端连与NFS daemon进行联机,mountd对用户进行认证,nfs提供文件共享服务功能。

NFS daemon

rpc.nfsd 提供NFS服务
rpc.mountd 用于验证用户是否有权限使用NFS
rpc.lockd与rpc.statd 用于锁定文件防止多个用户同时修改,致使文件混乱。
rpc.quota 用于设置NFS的磁盘配额。
rpc.bind 用于将服务与端口绑定
rpc.statd 通知NFS客户端何时一个NFS服务器非正常重启动.这个进程被nfslock服务自动启动,不须要用户的配置.
rpc.idmapd 用于将全部用户的ID映射为nobody用户shell

实例

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/
相关文章
相关标签/搜索