RHEL_NFS服务器

复制代码
架设一台NFS服务器,并按照以下要求配置

1、开放/nfs/shared目录,供所有用户查询资料

2、开放/nfs/upload目录,为192.168.xxx.0/24网段主机可以上传目录,

并将所有用户及所属的组映射为nfs-upload,其UID和GID均为210

3、将/home/tom目录仅共享给192.168.xxx.xxx这台主机,并只有用户tom可以完全访问该目录

一、基础环境准备

1.1安装rpc和nfs

cs 复制代码
yum  install  nfs-utils  -y  
yum  install  rpcbind  -y   # 默认已安装

1.2启动NFS相关服务

cs 复制代码
# 启动并启用rpcbind服务
systemctl start rpcbind
systemctl enable rpcbind

# 启动并启用NFS服务
systemctl start nfs-server
systemctl enable nfs-server

1.3创建所需共享文件

复制代码
mkdir -p /nfs/shared
mkdir -p /nfs/upload
mkdir -p /home/tom

二、配置/etc/exports文件

2.1 编辑exports配置文件

复制代码
vim /etc/exports

2.2添加以下配置内容

cs 复制代码
# 1. 开放/nfs/shared目录,供所有用户查询资料
/nfs/shared *(ro,sync,all_squash)

# 2. 开放/nfs/upload目录,为192.168.111.0/24网段主机可以上传目录
# 并将所有用户及所属的组映射为nfs-upload,其UID和GID均为210
/nfs/upload 192.168.111.0/24(rw,sync,all_squash,anonuid=210,anongid=210)

# 3. 将/home/tom目录仅共享给192.168.111.100这台主机,并只有用户tom可以完全访问该目录
/home/tom 192.168.111.100(rw,sync,no_all_squash)

三、参数详解与配置说明

3.1 权限参数说明

cs 复制代码
ro:只读访问权限

rw:读写访问权限

sync:数据同步写入内存和硬盘,保证数据一致性

all_squash:无论NFS客户端使用什么账户访问,均映射为NFS 服务器的匿名账户(nobody),推荐

no_all_squash:保留远程用户的UID和GID权限

anonuid/anongid:指定匿名用户的UID和GID

no_root_squash:root用户保持root权限(慎用)

3.2 创建映射用户和设置权限

cs 复制代码
# 创建nfs-upload用户组(GID=210)
groupadd -g 210 nfs-upload

# 创建nfs-upload用户(UID=210)
useradd -u 210 -g 210 nfs-upload

# 设置目录权限
chown -R nfs-upload:nfs-upload /nfs/upload
chmod -R 755 /nfs/shared
chmod -R 775 /nfs/upload

# 设置tom用户对/home/tom目录的权限
chown -R tom:tom /home/tom
chmod -R 700 /home/tom

四、应用配置并验证

4.1 重新加载exports配置

cs 复制代码
# 或者重新启动NFS服务
systemctl restart nfs-server

4.2验证共享目录是否正确导出

cs 复制代码
# 查看本机共享的目录列表
showmount -e

# 或者查看指定IP的共享
showmount -e localhost

五、客户端挂载与测试

5.1安装rpc和nfs,并启动服务

cs 复制代码
#安装rpc和nfs
yum  install  nfs-utils  -y  
yum  install  rpcbind  -y   # 默认已安装

# 启动并启用rpcbind服务
systemctl start rpcbind
systemctl enable rpcbind

# 启动并启用NFS服务
systemctl start nfs-server
systemctl enable nfs-server

5.2 客户端挂载共享目录

cs 复制代码
# 创建本地挂载点
mkdir -p /nfs/nfs_shared
mkdir -p /nfs/nfs_upload
mkdir -p /nfs/tom

# 挂载共享目录
mount -t nfs 服务器IP:/nfs/shared /nfs/nfs_shared
mount -t nfs 服务器IP:/nfs/upload /nfs/nfs_upload
mount -t nfs 服务器IP:/home/tom /nfs/tom
查看挂载情况
cs 复制代码
df -h

5.3 测试读写权限

5.3.1
cs 复制代码
# 测试/nfs/shared目录(应只读)
touch /nfs/shared/test.txt  # 应该失败
5.3.2
cs 复制代码
# 测试/nfs/upload目录(应可写)
touch /nfs/upload/zhangsan.txt  # 应该成功
5.3.3
cs 复制代码
# 检查文件所有权
ls -l /nfs/upload/zhangsan.txt  # 应该显示UID/GID为210
5.3.4
cs 复制代码
[root@centos100 ~]# su - tom
上一次登录:日 11月 16 14:29:11 CST 2025pts/0 上
-bash-4.2$ touch /home/tom test.txt11
-bash-4.2$ exit
登出

[root@centos100 ~]# ll /home/tom
ls: 无法打开目录/home/tom: 权限不够

#创建用户zhangsan
groupadd zhangsan
useradd zhangsan -g zhangsan


[root@centos100 ~]# su - zhangsan
上一次登录:日 11月 16 14:25:04 CST 2025pts/0 上
-bash-4.2$ touch /home/tom xixi
touch: 正在设置"/home/tom" 的时间: 权限不够
touch: 无法创建"xixi": 权限不够
-bash-4.2$

#到服务器查看/home/tom
[root@master ~]# ll /home/tom
total 0
-rw-rw-r-- 1 tom tom 0 Nov 16 15:10 test.txt11
相关推荐
Saniffer_SH7 分钟前
【每日一题】一台可编程的PCIe 6.0主机 + 一套自动化CTS验证平台 + 一个轻量级链路分析系统
运维·服务器·测试工具·fpga开发·自动化·计算机外设·硬件架构
吕司7 分钟前
Linux线程的概念
linux·运维·服务器
江西省遂川县常驻深圳大使1 小时前
openclaw.json配置示例
服务器·json·openclaw
飞Link1 小时前
深度掌控 Agent 调试:LangGraph 本地服务器与 Studio 核心指南
运维·服务器·jvm
Blurpath住宅代理1 小时前
IP欺诈评分深度解析:构建智能反欺诈体系的核心技术
网络·静态ip·动态代理·住宅ip·住宅代理·静态住宅代理
古月方枘Fry1 小时前
三层交换+单臂路由+ACL网络配置
服务器·网络·智能路由器
驾驭人生1 小时前
ASP.NET Core 实现 SSE 服务器推送|生产级实战教程(含跨域 / Nginx / 前端完整代码)
服务器·前端·nginx
zbtlink2 小时前
一分钱一分货:不同价位 Wi-Fi 7 的区别
网络·智能路由器
KOYUELEC光与电子努力加油2 小时前
JAE日本航空电子推出满足汽车市场小型防水最新需求的MX80系列连接器
服务器·科技·单片机·汽车
Zeku2 小时前
虚拟机网络设置
网络·stm32·freertos·linux驱动开发·linux应用开发