一、概念

nfs server:提供服务的服务器。

nfs client:访问服务端的服务器。

RPC:远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。

关系:NFS是一种文件系统,RPC负责信息的传输。

二、NFS守护进程

nfsd:基本的nfs守护进程,保证客户端能够连接服务端。

mountd:RPC安装守护进程,管理NFS文件系统。

当客户端通过nfsd连接到服务端时候,还要进行身份验证,根据服务端上面/etc/exports来对比客户端的权限。

三、安装

服务端

1.安装相关的rpm包

yum install rpcbind nfs-utils -y

# nfs-utils:基本的NFS命令以及监控程序。

# rpcbind:支持安全的NFS RPC服务的连接。

2.查看nfs相关的配置文件

rpm -qc nfs-utils

/etc/gssproxy/24-nfs-server.conf

/etc/modprobe.d/lockd.conf

/etc/nfs.conf

/etc/nfsmount.conf

/etc/request-key.d/id_resolver.conf

/etc/sysconfig/nfs

/var/lib/nfs/etab

/var/lib/nfs/rmtab

/var/lib/nfs/state

/var/lib/nfs/xtab

3./etc/exports是nfs的主配置文件,设置权限/共享目录等等

格式(来自网络)

[客户端1选项(访问权限,用户映射,其他)] [客户端2选项(访问权限,用户映射,其他)]

##############输出目录:###################

输出目录是指NFS系统中需要共享给客户机使用的目录;

##############客户端:####################

客户端是指网络中可以访问这个NFS输出目录的计算机

#############客户端常用的指定方式###########

指定ip地址的主机:192.168.0.200

指定子网中的所有主机:192.168.0.0/24 192.168.0.0/255.255.255.0

指定域名的主机:nfs.cnhzz.com

指定域中的所有主机:*.cnhzz.com

所有主机:*

##################选项:####################

选项用来设置输出目录的访问权限、用户映射等。

NFS主要有3类选项:

1)访问权限选项

设置输出目录只读:ro

设置输出目录读写:rw

2)用户映射选项

all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody);

no_all_squash:与all_squash取反(默认设置);

root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置);

no_root_squash:与rootsquash取反;

anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx);

anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx);

3)其它选项

secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置);

insecure:允许客户端从大于1024的tcp/ip端口连接服务器;

sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;

async:将数据先保存在内存缓冲区中,必要时才写入磁盘;

wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置);

no_wdelay:若有写操作则立即执行,应与sync配合使用;

subtree_check:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置);

no_subtree_check:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;

4.常用配置

/qbackup/syc 10.10.20.165(rw,sync,subtree_check,no_root_squash)

四、相关命令

1.exportfs [-aruv]

-a 全部挂载或者卸载/etc/exports下的内容

-r 重新读取/etc/exports下的内容,并且更新/etc/exports和/var/lib/nfs/xtab内容

-v 输出详细信息

2.nfsstat

查看NFS的运行状态。

3.rpcinfo

查看rpcbind的执行信息

4.showmount

-a 显示已经挂载在客户端上的信息

-e 显示次ip分享出来的目录

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐