当前位置: 首页 > news >正文

RHCE 练习三:架设一台 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 对该目录有读写权限

二、实验

前情提要:

① 需要准备两台版本一致的 linux 主机且网络可互通,这里我的服务端为 192.168.96.142,客户端为 192.168.96.132

② 关闭服务端防火墙以及 selinux

[root@server ~]# systemctl stop firewalld[root@server ~]# setenforce 0

③ 磁盘挂载操作

[root@server ~]# mount /dev/sr0 /mnt
mount: /mnt: WARNING: source write-protected, mounted read-only.

④ 配置 yum 源文件

[root@server ~]# vim /etc/yum.repos.d/base.repo[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
gpgcheck=0

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

① 安装 nfs-utils 共享文件系统并启动程序

[root@server ~]# dnf install nfs-utils -y[root@server ~]# systemctl start nfs-server.service 

 ②  编辑 nfs 主配置文件

[root@server ~]# vim /etc/exports# 共享目录(根目录)   允许访问的主机*(权限,参数)
/nfs/shared  *(ro)    

③ 根据配置文件创建资源文件并查看文件权限,确保所有用户可读 /nfs/shared 路径下文件即可

[root@server ~]# mkdir -pv /nfs/shared
mkdir: 已创建目录 '/nfs'
mkdir: 已创建目录 '/nfs/shared'[root@server ~]# touch /nfs/shared/test{1..10}[root@server ~]# ll -d /nfs/shared/
drwxr-xr-x. 2 root root 137  5月 19 20:01 /nfs/shared/

④ 由于上面我们修改了 nfs 的配置文件,想要文件生效我们要重启 nfs-server 服务,但在这里我们不能直接用 systemctl  restart  nfs-server 来重启服务,这样我们每重启一次服务就会重新进行端口注册,推荐用 exportfs  -ra 来实现。刷新后未出现报错说明我们的配置没有问题!

[root@server ~]# exportfs -ra    # 重新导出(re-export)并刷新所有 NFS 共享目录,结合了 -r(重新读取配置)和 -a(应用到所有目录)的功能

⑤ 客户端主机向服务端主机建立 nfs 连接

Ⅰ.想要建立连接我们的客户端也需要下载 nfs-utils 服务程序

[root@client ~]# mount /dev/sr0 /mnt[root@client ~]# dnf install nfs-utils -y

Ⅱ.客户端查询 nfs 服务器(IP 为 192.168.96.142)导出的共享目录列表

[root@client ~]# showmount -e 192.168.96.142Export list for 192.168.96.142:
/nfs/shared *

Ⅲ.创建一个挂载目录 /dbw,在将 /nfs/shared 文件系统挂载到 /dbw 目录(可共享文件路径)

[root@client ~]# mkdir /dbw[root@client ~]# mount 192.168.96.142:/nfs/shared /dbw

Ⅳ.查看 /nfs/shared 路径,可以看到服务端所共享的文件

[root@client ~]# ll /dbw

2.开放 /nfs/upload 目录,为 192.168.xxx.0/24 网段主机可以上传目录,并将所有用户及所属的组映射为 nfs-upload,其 UID 和 GID 均为 210

① 编辑 nfs 配置文件

[root@server ~]# vim /etc/exports
# 共享目录(根目录)   允许访问的主机*(权限,参数)
/nfs/shared  *(ro)/nfs/upload  192.168.96.0/24(rw,all_squash,anonuid=210,anongid=210)

② 根据配置文件创建资源文件并查看文件权限,确保用户可读可写 /nfs/shared 路径下文件即可;刷新

[root@server ~]# mkdir -pv /nfs/upload
mkdir: 已创建目录 '/nfs/upload'[root@server ~]# touch /nfs/upload/red{1..10}[root@server ~]# ll -d /nfs/upload/
drwxr-xr-x. 2 root root 127  5月 19 20:26 /nfs/upload/[root@server ~]# chmod o+w /nfs/upload/ -R   # 修改其他用户权限,加上可写权限[root@server ~]# exportfs -ra

③ 根据配置文件中所写,需要创建一个 uid 为 210 且 gid 也为 210 的用户账号

[root@client ~]# useradd -r -u 210 nfs-upload[root@client ~]# id nfs-upload 
用户id=210(nfs-upload) 组id=210(nfs-upload) 组=210(nfs-upload)

④ 客户端查询 NFS 服务器导出的共享目录列表

[root@server ~]# showmount -e 192.168.96.142Export list for 192.168.96.142:
/nfs/shared *
/nfs/upload 192.168.96.0/24

⑤ 将 /nfs/upload 文件挂载到 /dbw 目录并查看共享目录下是否有服务端共享的文件,挂载之前我们先要取消前面挂载到 /dbw 目录下的 /nfs/shared 文件共享目录

[root@client ~]# umount 192.168.96.142:/nfs/shared /dbw
umount: /dbw: not mounted.[root@client ~]# ll /dbw
total 0[root@client ~]# mount 192.168.96.142:/nfs/upload /dbw[root@client ~]# ll /dbw

⑥ 在客户端下上传文件并查看

[root@client ~]# touch /dbw/red111[root@client ~]# ll /dbw

3.将 /home/tom 目录仅共享给 192.168.xxx.xxx 这台主机,并只有用户 tom 对该目录有读写权限

① 编辑 nfs 配置文件


[root@server ~]# vim /etc/exports# 共享目录(根目录)   允许访问的主机*(权限,参数)
/nfs/shared  *(ro)/nfs/upload  192.168.96.0/24(rw,all_squash,anonuid=210,anongid=210)/home/tom  192.168.96.132(rw,root_squash,all_squash,anonuid=1001,anongid=1001)

② 根据配置文件创建资源文件并查看文件权限,确保 tom 可读可写 /home/tom 路径下文件即可;刷新

[root@server ~]# mkdir -pv /home/tom 
mkdir: 已创建目录 '/home/tom'[root@server ~]# touch /home/tom/tom{1..10}[root@server ~]# ll -d /home/tom
drwxr-xr-x. 2 root root 127  5月 19 22:00 /home/tom[root@server ~]# useradd tom[root@server ~]# chown tom:tom /home/tom    # 改变文件所有者
[root@server ~]# chmod 700 /home/tom     # 改变文件权限仅 tom 用户有读写执行权限[root@server ~]# exportfs -ra

③ 根据配置文件中所写,创建 tom ,id为 1001

[root@client ~]# useradd -u 1001 tom[root@client ~]# id tom
uid=1001(tom) gid=1001(tom) groups=1001(tom)

④ 将 /home/tom 文件挂载到 /dbw 目录并查看共享目录下是否有服务端共享的文件,挂载之前我们先要取消前面挂载到 /dbw 目录下的 /nfs/upload 文件共享目录

[root@client ~]# umount 192.168.96.142:/nfs/upload /dbw
umount: /dbw: not mounted.[root@client ~]# ll /dbw
total 0[root@client ~]# mount 192.168.96.142:/home/tom /dbw[root@client ~]# ll /dbw

⑤ 客户端上创建文件查看权限以及所有者

[root@client ~]# touch /dbw/tom111[root@client ~]# ll /dbw

相关文章:

  • 02-前端Web开发(JS+Vue+Ajax)
  • Oracle 数据库的默认隔离级别
  • Playwright 多语言一体化——Python_Java_.NET 全栈采集实战
  • 【Python 算法零基础 4.排序 ② 冒泡排序】
  • 5个yyds的.Net商城开源项目
  • 交易所开发:构建功能完备的金融基础设施全流程指南
  • .NET外挂系列:2. 了解强大的 harmony 注解特性
  • Adminer:一个基于Web的轻量级数据库管理工具
  • 游戏引擎学习第295天:堆叠房间用于Z层调试
  • 芯驰科技与安波福联合举办技术研讨会,深化智能汽车领域合作交流
  • 洛谷U536262 井底之“鸡”
  • 【Unity网络编程知识】Unity的 UnityWebRequest相关类学习
  • ThreadLocal作一个缓存工具类
  • 超小多模态视觉语言模型MiniMind-V 训练
  • OV7670连接STM32F407VET
  • Java迭代器知识点详解
  • 从编程助手到AI工程师:Trae插件Builder模式实战Excel合并工具开发
  • 在CentOS系统上部署GitLabRunner并配置CICD自动项目集成!
  • 《算法导论(第4版)》阅读笔记:p86-p90
  • Windows逆向工程提升之二进制分析工具:HEX查看与对比技术
  • 欧洲加大力度招募美国科研人员
  • 习近平在河南洛阳市考察调研
  • 4年间职务侵占、受贿逾亿元,北京高院:严惩民企内部腐败
  • 泽连斯基与美国副总统及国务卿会谈,讨论伊斯坦布尔谈判等问题
  • 曾毓群说未来三年重卡新能源渗透率将突破50%,宁德时代如何打好换电这张牌
  • 广东缉捕1名象牙走私潜逃非洲“红通”逃犯