NFS
一、简介
NFS
(网络文件系统)能通过网络让不同的机器、系统共享彼此的文件
配置文件(默认为空文件):/etc/exports
管理命令:/usr/sbin/exportfs
共享资源的日志文件:/var/lib/nfs/*tab
客户端查询共享资源命令:/usr/sbin/showmount
NFS
服务主要进程:
rpc.nfsd # 最主要的 NFS 进程,管理客户端是否可登录
rpc.mountd # 挂载和卸载 NFS 文件系统,包括权限管理
rpc.lockkd # 管理文件锁,避免同时写出错(非必要)
rpc.statd # 检查文件一致性,可修复文件(非必要)
二、常用参数
/etc/exports
配置文件常用参数
ro # 只读
rw # 读写
sync # 将数据同步写入内存缓冲区与磁盘中(效率低,但可保证数据的一致性)
async # 将数据先保存在内存缓冲区中,必要时才写入磁盘
insecure # 允许客户端从大于 1024 的 TCP/IP 端口连接服务器
secure(默认) # 限制客户端只能从小于 1024 的 TCP/IP 端口连接旧服务器
wdelay(默认) # 检查是否有相关的写入操作,如有则将这些写入操作一起执行(该参数为默认参数)
subtree_check(默认) # 若输出目录是一个子目录,则 NFS 服务器将检查其父目录的权限
no_subtree_check # 即使输出目录是一个子目录,NFS 服务器也不检查其父目录的权限(可提高效率)
no_wdelay # 若有写入操作则立即执行(应与 sync 配合使用)
root_squash # 将来访问的 root 用户映射为匿名用户或用户组
no_root_squash # 访问用户先与本机用户匹配,匹配失败后在映射为匿名用户或用户组
all_squash # 所有访问用户都映射为匿名用户或用户组
no_all_squash # 访问用户先与本机用户匹配,匹配失败后在映射为匿名用户或用户组
三、实例
1、编辑配置文件
配置文件格式为:路径 + IP、掩码 + 参数
# 创建需共享的文件夹
mkdir -p /data/web_data
# 在 /etc/exports 配置文件中添加如下内容
/data/web_data 192.168.1.0/24(rw,no_root_squash)
2、刷新配置
刷新配置:exportfs -a
3、重启服务
systemctl restart rpcbind
systemctl restart nfs