linux 网络系统管理 技能大赛 NFS赛题配置

NFS 是 Network File System 的缩写,即网络文件系统。功能是让客户端通过网络访问不同主机上磁盘里的数据,主要用在类Unix系统上实现文件共享的一种方法。

服务端

共享/data/share目录

用于存储server01主机的web数据 //后面有web服务再做

仅允许service网段访问该共享

c 复制代码
yum install nfs-utils    //安装NFS
systemctl start rpcbind   //nfs的消息通知服务
systemctl start nfs     //开启nfs服务
mkdir /data/share     //创建共享目录
chmod 755 /data/share    //设置权限
vim /etc/exports     //配置需要共享的目录,及权限
    /data/share     172.16.100.128/25(rw,sync,no_root_squash,no_all_squash)


/data/share     //共享目录
172.16.100.128/25    //仅允许service网段访问
rw    //权限设置,读写
sync   //同步共享目录
no_root_squash    //可以使用root授权
no_all_squash    //可以使用普通用户授权
c 复制代码
systemctl restart nfs    //重启服务
showmount -e localhost     //检查下本地的共享目录
	Export list for localhost:
	/data/share 172.16.100.128/25

客户端

c 复制代码
yum -y install nfs-utils     //安装nfs服务
systemctl start rpcbind    //启动NFS服务
showmount -e 172.16.100.201      //查下客户端的共享目录
	Export list for 172.16.100.201:
	/data/share 172.16.100.128/25
mkdir -p /data/share     //在客户端创建目录
mount -t nfs 172.16.100.201:/data/share /data/share      //将服务器的共享目录挂载到本地目录
mount    //查看是否成功
	172.16.100.201:/data/share on /data/share type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=172.16.100.202,local_lock=none,addr=172.16.100.201)    //说明成功

测试

c 复制代码
cd /data/share    //进入共享目录    
touch a				//创建文件a
ll			//查看下权限

//到服务器端查看
cd /data/share    
ll      //可以看到共享目录已经写入

誉天

共享/mnt目录

c 复制代码
vim /etc/exports    //编辑配置文件

/mnt	*(rw,async)

/mnt   //要共享的目录
*		//允许访问的主机,*表示所有
rw		//以可读写的方式进行共享
async		//使用异步同步的方式来进行同步

重启服务

排错

c 复制代码
tail -f /var/log/messages    //查看日志消息
共享权限 功能
ro/rw 只读或者读写共享
sync/async 同步或者异步
sec=sys 基于标准linux文件权限访问
root_squash 限制远程主机上以root访问,root用户映射为nobody用户
no_root_squash 远程主机用root访问,映射为本地的root用户
all_squash 限制远程主机上的所有普通用户访问,普通用户映射为nobody用户
no_all_squash 远程主机普通用户访问,映射为本地同uid的用户

客户端查看共享情况

c 复制代码
showmount -e (主机名/IP)

挂载目录

c 复制代码
mkdir	/mnt		//先创建挂载点
mount (主机名/IP):/mnt	/mnt    //把nfs服务器的/mnt  挂载到本地的/mnt   后者是本地的

192.168.40.10:/mnt	/mnt	nfs	defaults	0	0	//永久挂载,编写进/etc/fstab

umount	/mnt	//取消挂载

mount -a	//刷新挂载点

df -h		//查看挂载情况

查看共享目录的权限

c 复制代码
exportfs	-v   //查看所有的nfs共享
exportfs	-r	//使配置文件生效

这个时候呢,可能无法写入,因为默认是将访问的用户映射为nobody用户了,所以么有权限写入

c 复制代码
chmod 757	/mnt   //给其他人权限拉满
同步和异步的区别

同步

c 复制代码
用户写入数据, 先写在客户端上,客户端再传给服务端,服务端写好后,再回复客户端写好了  
//数据一致性强要求,但是传输慢。如果两台主机的距离长,链路延迟大,不能用同步,太慢了

异步

c 复制代码
用户写入数据,先写在客户端上,客户端会周期性的把数据同步到服务端上
//没有数据一致性要求的,可以用异步,速度快
相关推荐
人工智能训练5 小时前
【极速部署】Ubuntu24.04+CUDA13.0 玩转 VLLM 0.15.0:预编译 Wheel 包 GPU 版安装全攻略
运维·前端·人工智能·python·ai编程·cuda·vllm
微露清风6 小时前
系统性学习Linux-第二讲-基础开发工具
linux·运维·学习
不会代码的小猴7 小时前
Linux环境编程第六天笔记--system-V IPC
linux·笔记
阳光九叶草LXGZXJ7 小时前
达梦数据库-学习-48-DmDrs控制台命令(同步之Manager、CPT模块)
linux·运维·数据库·sql·学习
诸神缄默不语7 小时前
Linux命令行教程
linux
小二李8 小时前
第11章 nestjs服务端开发:登录鉴权
运维·服务器
JAVA+C语言9 小时前
如何优化 Java 多主机通信的性能?
java·开发语言·php
i建模9 小时前
如何在Arch Linux中重设忘记的root密码
linux·运维·服务器
chatexcel10 小时前
元空AI+Clawdbot:7×24 AI办公智能体新形态详解(长期上下文/自动化任务/工具粘合)
运维·人工智能·自动化
青岑CTF10 小时前
攻防世界-Ics-05-胎教版wp
开发语言·安全·web安全·网络安全·php