$ yum install nfs-utils rpcbind
启动NFS和RPC服务
$ systemctl enable rpcbind
$ systemctl enable nfs-server
$ systemctl start rpcbind
$ systemctl start nfs-server
防火墙放通NFS
$ firewall-cmd --permanent --add-service=nfs
$ firewall-cmd --permanent --add-service=rpc-bind
$ firewall-cmd --permanent --add-service=mountd
$ firewall-cmd --reload
共享目录配置
创建共享目录
# 创建共享目录,分配权限为nfsnobody用户和组
配置exports文件
$ vim /etc/exports
# 格式如下
# 目录 允许访问主机(参数)
参数 | 作用 |
---|---|
ro | 共享目录只读 |
rw | 共享目录可读可写 |
all_squash | 将所有用户都映射为匿名用户和用户组 |
no_all_squash(默认) | 访问用户先于本机用户匹配,匹配失败后再映射为匿名或或用户组 |
root_squash(默认) | 将来访的root用户映射为匿名用户或用户组 |
no_root_squash | 来访root用户保持root账号权限 |
anonuid= | 指定匿名访问用户的本地用户UID,默认为nfsnobody(65534) |
anongid= | 指定匿名用户访问用户的本地用户组GID,默认为nfsnobody(65534) |
secure(默认) | 限制客户端只能从小于1024的TCP/IP端口连接服务器 |
inSecure | 允许客户端从大于1024的TCP/IP端口连接服务器 |
sync | 将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性 |
async | 将数据先保存在内存缓冲区中,必要时才写入磁盘 |
wdelay(默认) | 检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率 |
no_wdelay | 若有写操作则立即执行,应于sync配合使用 |
subtree_check(默认) | 若输出目录是一个子目录,则NFS服务器将检查其父目录的权限 |
no_subtree_check | 即使输出目录是一个子目录,NFS服务器也不检查其父目录的权限,这样可以提高效率 |