Linux下NFS文件共享服务

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/Leslie_qlh/article/details/99655838

NFS

NFS是Network File System的缩写,中文意思是网络文件系统。它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录。NFS客户端(一般为应用服务器,例如Web)可以通过挂载(mount)的方式将NFS服务器端共享的数据目录挂载带NFS客户端本地系统中(就是某一个挂载点下)。从客户端本地看,NFS服务器端共享的目录就好像是客户端自己的磁盘分区或目录一样,而实际上确实远端的NFS服务器的目录。

NFS网络文件系统很像Windows系统的网络共享、安全功能、网络驱动器映射,这也和Linux系统里的samba服务类似。只不过一般情况下,Windows网络共享服务或samba服务用于办公局域网共享,而互联网中小型网站集群架构后端常用NFS进行数据共享。

1.NFS服务部署

在服务端:
mkdir /westos_nfs			建立相关目录
systemctl start nfs			开启服务
systemctl enable nfs		设置开机自启动
systemctl status nfs		查看状态

firewall-cmd --permanent --add-service=nfs		防火墙添加nfs服务
firewall-cmd --permanent --add-service=rpc-bind		防火墙添加rpc服务
firewall-cmd --permanent --add-service=mountd		防火墙添加mountd服务
firewall-cmd --reload		刷新

在这里插入图片描述

vim /etc/exports				编辑共享配置文件

/westos_nfs   *(sync)			要共享的目录       准许的访问者(挂载方式,同步)

exportfs -rv		刷新,执行配置文件

在这里插入图片描述
在这里插入图片描述

touch /westos_nfs/lee{1..5}		建立文件

2.共享目录的挂载

在客户端:

yum install autofs -y 安装相关程序

在这里插入图片描述

systemctl start autofs.service			开启服务
showmount -e 172.25.254.128			查看服务端共享目录

在这里插入图片描述

mount 172.25.254.128:/westos_nfs /mnt		挂载共享目录
cd /net				进入共享路径
cd /172.25.254.128   可以看到共享文件夹

cd westos_nfs/     可以看到共享文件夹里面的文件

在这里插入图片描述

在客户端:
vim /etc/auto.master		编辑主挂载文件

/mnt    /etc/auto.nfs	
	最终挂载点的上层目录   子策略文件

在这里插入图片描述

vim /etc/auto.nfs		编辑子策略文件

westos          172.25.254.128:/westos_nfs
最终挂载点		挂载共享目录	

systemctl restart autofs.service	重启服务

在这里插入图片描述

cd /mnt/
ls		进入共享设备,查看文件,此时并没有发现文件

cd westos	但是尝试进入westos目录,可以成功进入
ls		可以查看到服务端共享目录中的文件

在这里插入图片描述

在客户端:
vim /etc/auto.nfs		编辑子策略文件

westos          -ro,vers=3      172.25.254.128:/westos_nfs
最终挂载点	挂载参数(权限,版本)	挂载设备	

systemctl restart autofs.service	重启服务

在这里插入图片描述

在服务端:
vim /etc/exports		编辑共享配置文件

/westos_nfs     *(sync) 172.25.254.228(rw)	给指定主机读写权限

exportfs -rv			刷新

在这里插入图片描述

在客户端:
cd /net/172.25.254.128/westos_nfs	进入共享目录

touch file		尝试建立文件
touch: cannot touch ‘file’: Permission denied	提示被拒绝

在这里插入图片描述

在服务端:
chmod 777 /westos_nfs/		给共享目录满权限

在这里插入图片描述

在客户端:
touch file		尝试建立文件,此时可以成功建立

ll			查看文件信息
-rw-r--r-- 1 nfsnobody nfsnobody 0 Aug 14 10:57 file	发现文件为匿名用户建立

在这里插入图片描述

在服务端:
id westos		 查看westos用户的id
uid=1001(westos) gid=1001(westos) groups=1001(westos)
vim /etc/exports		编辑共享配置文件

/westos_nfs     *(sync) 172.25.254.228(rw,anonuid=1001,anongid=1001)	设置指定主机所创建的文件所有者及所有组为1001。

exportfs -rv		刷新

在这里插入图片描述

在客户端:
touch lee		尝试建立文件,此时可以成功建立

ll			查看文件信息

-rw-r--r-- 1 lee    lee    0 Aug 14 11:09 lee		显示此文件为lee用户创建,所属组为lee(lee时id为1001对应的用户和所属组)

在这里插入图片描述

在服务端:
vim /etc/exports		编辑共享配置文件

/westos_nfs     *(sync) 172.25.254.228(rw,anonuid=1001,anongid=1001,no   _root_squash)		设置当客户端使用超级用户时,不进行身份转换,沿用超级用户

exportfs -rv			刷新

在这里插入图片描述
在这里插入图片描述

在客户端:
touch animal			尝试建立文件,此时可以成功建立

ll		查看文件信息
-rw-r--r-- 1 root      root      0 Aug 14 11:22 animal		显示此文件所有者和所属组为root

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Leslie_qlh/article/details/99655838