1、环境准备
1.1、演示机器的准备
NFS服务端 CentOS 7.9.2009 192.168.10.24 NFS客户端 CentOS 7.9.2009 192.168.10.25
1.2、关闭防火墙和SELinux
# 关闭防火墙 systemctl disable firewalld systemctl stop firewalld # 关闭SELinux sed -ri 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
2、NFS服务端
2.1、安装
yum install nfs-utils -y
2.2、配置
# 配置共享目录 [root@nfs-server ~]# vi /etc/exports /data 192.168.10.0/24(rw,sync,all_squash) # 创建目录并且授权所有者 chown -R nfsnobody.nfsnobody /data
2.3、启动NFS服务
systemctl enable rpcbind nfs-server systemctl start rpcbind nfs-server
3、NFS客户端
3.1、安装
yum install nfs-utils -y
3.2、查询服务端可挂载的目录
[root@nginx02 ~]# showmount -e 192.168.10.24 Export list for 192.168.10.24: /data 192.168.10.0/24
3.3、挂载
3.3.1、手动挂载
mkdir /nfsdir mount -t nfs 192.168.10.24:/data /nfsdir df -h | grep nfsdir
3.3.2、测试文件增删查
echo "nfs-client" > /nfsdir/test.txt cat /nfsdir/test.txt rm -f /nfsdir/test.txt
3.3.3、指定特殊权限的挂载
# 禁止使用suid,exec mount -t nfs -o nosuid,noexec,nodev 192.168.10.24:/data /nfsdir # 禁止更新目录及文件时间戳挂载 mount -t nfs -o noatime,nodiratime 192.168.10.24:/data /nfsdir
3.4、卸载
3.4.1、正常卸载
umount /nfsdir
3.4.2、强制卸载
umount -lf /nfsdir
3.5、配置开机自动挂载
[root@nginx02 ~]# vi /etc/fstab 192.168.10.24:/data /nfsdir nfs defaults 0 0
4、NFS配置详解
4.1、参数介绍
rw #* 读写权限 ro # 只读权限 root_squash # 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户(不常用) no_root_squash # 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员(不常用) all_squash # 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户(常用) no_all_squash # 无论NFS客户端使用什么账户访问,都不进行压缩 sync #* 同时将数据写入到内存与硬盘中,保证不丢失数据 async # 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据 anonuid* # 配置all_squash使用,指定NFS的用户UID,必须存在系统 anongid* # 配置all_squash使用,指定NFS的用户UID,必须存在系统
4.2、验证ro权限
4.2.1、修改服务端的配置
# 配置如下 cat /etc/exports /data 192.168.10.0/24(ro,sync,all_squash) # 重启服务 systemctl restart nfs-server
4.2.2、挂载验证
[root@nginx02 /]# mount -t nfs 192.168.10.24:/data /nfsdir [root@nginx02 /]# touch /nfsdir/test.txt touch: cannot touch ‘/nfsdir/test.txt’: Read-only file system
4.3、验证all_squash、anonuid、anongid权限
4.3.1、修改服务端的配置
# cat /etc/exports /data 192.168.10.0/24(rw,sync,all_squash,anonuid=666,anongid=666)
4.3.2、服务端和客户端都创建用户和组
groupadd -g 666 www useradd -u 666 -g 666 www id www
4.3.3、服务端给目录授权所有者
chown www.www -R /data
systemctl restart nfs-server
4.3.4、挂载验证
mount -t nfs 192.168.10.24:/data /nfsdir echo "ok" > /nfsdir/ok.txt # ll /nfsdir/ok.txt -rw-r--r-- 1 www www 3 Mar 9 22:58 /nfsdir/ok.txt
标签:服务,nfsdir,squash,192.168,NFS,nfs,data From: https://www.cnblogs.com/ygbh/p/17201478.html