架构师之路-学渣到学霸历程-23

实战:NFS安装部署

接早上了解过了NFS的一些基本原理,咋们就看看一些实战;

尝试自己部署一下实验;然后实验成功了是我们最大的鼓励来着;

实战过程中,我们也面临了很多报错;所以每个实战的报错我都会列举出来;

来吧,大伙一下看看这个NFS的部署实战;

1、必备的操作如下
  • 关闭防火墙和安装好nfs服务相关组件
  • 服务器端:192.168.75.71
  • 客户端:192.168.75.72
shell 复制代码
#服务器端和客户端均进行如下操作:
	#关闭防火墙和selinux
systemctl stop firewalld
systemctl disable firewalld
	#永久关闭selinux
sed -i 's#=enforcing#=disabled#g' /etc/selinux/config 
	#安装nfs组件
yum -y install nfs-utils
2、配置服务器端
  • 编辑/etc/exports文件
    • 限定规则
shell 复制代码
#配置自己的nfs规则
[root@Linux1 ~]# vim /etc/exports
/data/liangjiawei       192.168.75.0/24(rw,sync)
# 格式:
	#/data/liangjiawei 要共享的目录,需要存在(不存在就可以创建)
	#192.168.75.0/24 谁能挂载使用,可以是网段,也可以指定具体ip
	# (rw,sync) 挂载的一些参数,rw表示挂载为可读可写,sync表示同步

#创建对应的目录
[root@Linux1 ~]# mkdir -p /data/liangjiawei
	#然后查看一下这些的目录的权限
		#这个实际上就是这个nfs挂在出来的权限;
[root@Linux1 ~]# ls -ld /data/ /data/liangjiawei/
drwxr-xr-x 3 root root 25 10月  3 16:06 /data/
drwxr-xr-x 2 root root  6 10月  3 16:06 /data/liangjiawei/

#重新读取一下配置文件-导出(广播)编辑的文件,并重启rpc和nfs服务
	#并且重启一下nfs服务
[root@Linux1 ~]# systemctl restart rpcbind nfs
[root@Linux1 ~]# exportfs -r
3、客户端验证配置
  • 使用showmount命令,查看网络上的共享文件
  • 创建目录,用于客户端的挂载
  • 然后直接挂载使用-->然后验证一下权限问题
shell 复制代码
#客户端直接查看一下网络中的共享文件
[root@Linux2 ~]# showmount -e 192.168.75.71
Export list for 192.168.75.71:
/data/liangjiawei 192.168.75.0/24

#创建建自己想要挂在的目录
[root@Linux2 ~]# mkdir /nfs
	#直接挂载使用
[root@Linux2 ~]# mount -t nfs  192.168.75.71:/data/liangjiawei /nfs/
[root@Linux2 ~]# df -h  | grep nfs
192.168.75.71:/data/liangjiawei   17G  1.6G   16G   10% /nfs
	#可以测试一下
[root@Linux2 nfs]# ls
	#这里明显发现,没法创建文件-->
[root@Linux2 nfs]# touch liangjiawei.txt
touch: 无法创建"liangjiawei.txt": 权限不够
	#解释如下:
#挂载完成之后,进入目录,可能会发现无法对目录中的文件进行修改,这主要是因为客户端访问服务器时,身份被压缩成nobody,相对服务器文件系统来说,就是其他用户。
#所以要想编辑,需要在服务端对文件授权或者更改exports文件,设置no_root_squash(不压缩客户端root身份)。
4、解读一下exportfs文件
shell 复制代码
#在服务器端配置:
[root@Linux1 ~]# exportfs  -v
/data/liangjiawei	192.168.75.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)

#解释如下:
rw:可读可写
ro:仅可读
sync:是指数据同步写入内存和磁盘
root_squash:如果客户端用root身份访问,则被压缩成nobody,权限也将受到限制。
no_root_squash:也就是不压缩,客户端使用root身份登录,全有所有权限,很危险。
all_squash:不管访问者是什么身份,包括root,全部压缩至匿名用户。
no_all_squash:保留访问用户的身份uid以及gid,一般只能查看,不能修改,权限问题,但是可以强制保存。

回到刚才那个实验,

  • 没法创建文件;
    • 可以直接升级目录权限
    • 也可以从nfs的权限重新定义
shell 复制代码
#第一个:可以提权;
	#这个不建议,因为权限过大;
[root@Linux1 ~]# chmod 777 -R /data/
[root@Linux1 ~]# ls -ld /data/ /data/liangjiawei/
drwxrwxrwx 3 root root 25 10月  3 16:06 /data/
drwxrwxrwx 2 root root  6 10月  3 16:06 /data/liangjiawei/
	#测试可以发现可以创建了
[root@Linux2 nfs]# touch liangjiawei.txt
[root@Linux2 nfs]# ll liangjiawei.txt 
-rw-r--r-- 1 nfsnobody nfsnobody 0 10月  3 16:26 liangjiawei.txt

#第二个:提高nfs的权限重新定义
[root@Linux1 ~]# vim /etc/exports
	#添加这个no_root_squash
/data/liangjiawei       192.168.75.0/24(rw,sync,no_root_squash)
	#重新挂在
[root@Linux2 ~]# vim /etc/fstab 
	#添加如下这一行:
192.168.75.71:/data/liangjiawei /mnt/   nfs     defaults        0       0
		#使用这个命令,必须在fstab文件中定义好
[root@Linux2 ~]# mount -t nfs -o soft,timeo=1  192.168.75.71:/data/liangjiawei
	#soft: 软挂载,遇到报错会终止挂载,并返回信息,默认是硬挂载,一直尝试挂载。
	#timeo: 超时时间,如果不设置,一直链接,可以设置小点
5、卸载问题解决
shell 复制代码
#如果在使用中是没法卸载的
umount.nfs4: /mnt/jfedu: device is busy
umount -l /mnt/jfedu 强行解除挂载
	#或者使用
fuser -m /mnt/data 将会显示使用这个模块的pid
fuser -mk /mnt/data 将会直接kill那个pid

分享环节:

hi,亲爱的朋友们:

  • 感谢你们耐心完这个笔记,如果笔记中出现的一些软件包、资源找不到的可以直接留言&私聊,我看见了就回复;
  • 资源免费共享;有需要滴滴,(仅仅是我有的)

我的坚持初衷:💕立志要成为一名架构师

  • 不断地去坚持学,其中的各种各样的难度,不言而喻~!
  • 坚持不是一件容易的事情,但它却是成功的关键。做起来吧~!

如果你也想要坚持:那么组团吧,咋们一块互相监督;一天一点分享也是进步;最怕就是孤军奋战!加油吧,追梦人~!

相关推荐
进阶的猪23 分钟前
使用printk对SPI子系统全过程的追踪
linux·服务器
2301_8035545233 分钟前
Linux里面的文件描述符和windows里面的句柄
linux·运维·服务器
IT摆渡者33 分钟前
linux 系统安全检查
运维·网络·经验分享·笔记
星马梦缘1 小时前
如何切换window-ubuntu双系统【方案一】
linux·ubuntu·双系统
云动课堂1 小时前
【运维实战】Nginx 高性能Web服务 · 一键自动化部署方案 (适配银河麒麟 V10 / openEuler / CentOS 7/8)
运维·前端·nginx
idolao1 小时前
CentOS 7 安装 jakarta-tomcat-connectors-jk2-src-current.tar.gz 详细步骤(解压、编译、配置)
linux·centos·tomcat
时空自由民.2 小时前
蓝牙协议栈介绍
linux·网络·单片机
KnowSafe2 小时前
证书自动化解决方案哪家更可靠?
运维·服务器·安全·https·自动化·ssl
hsjcjh2 小时前
2026实测:Gemini 3.1镜像站函数调用如何实现自动化运维工单?国内免费镜像教程
运维·自动化
日取其半万世不竭2 小时前
用云服务器搭建 Nextcloud,告别网盘限速和隐私泄露
运维·服务器