一、NFS网络系统
- NFS网络系统概念
网络文件系统(NFS)是Unix系统和网络附加存储文件管理器常用的网络文件系统,允许多个客户端通过网络共享文件访问。它可用于提供对共享二进制目录的访问,也可用于允许用户在同一工作组中从不同客户端访问其文件。可以简单的将它看作是一个文件服务器!这个NFS服务器可以让你的PC将网络远程的NFS服务器分享的目录,挂载到本地端的机器当中,在本地端的机器看来,那个远程主机的目录就好像是自己的一个磁盘分区槽一样。NFS在文件传送或信息传送过程中依赖于RPC协议。 - 版本说明
NFS协议有多个版本:Linux支持版本4/版本3和版本2,而大多数系统管理员熟悉的是NFSv3。默认情况下,该协议并不安全,但是更新的版本(如NFSv4)提供了对更安全的身份验证的支持,甚至可以通过Kerberos进行加密。 - RPC概念
RPC(Remote Procedure Call)远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。NFS服务器在启动的时候就要向RPC注册,所以NFS服务器也是一种RPC server。
二、NFS服务部署
- 准备工作
(1)需要两台主机,服务器(172.25.254.131)和客户端(172.25.254.231)
(2)搭建yum源
redhat7.0镜像链接: https://pan.baidu.com/s/1MImLQPbvSWwT0deq3-jK3g 提取码: xn4u 注意镜像要与主机版本一致
redhat7.3镜像链接: https://pan.baidu.com/s/1iZC4ppKS-fbFMgB7HIm5Vw 提取码: 8mq9 - 服务端设置
yum install nfs-utils -y
vim /etc/exports
/mnt 172.25.254.0/24(ro,nsyc)
systemctl start nfs-server
systemctl stop firewalld
exportfs -rv ##刷新
3. 客户端设置及测试
yum install nfs-utils
showmount -e 172.25.254.131
mount 172.25.254.131:/mnt /mnt
三、NFS相关参数设定
- 共享目录可写
(1)服务端
vim /etc/exports
/mnt 172.25.254.0/24(rw,sync)
exportfs -rv 刷新
chmod 777 /mnt
(2)测试
客户端:创建文件
mount 172.25.254.131:/mnt /mnt
touch file
ll ##查看文件属性
服务端:查看客户端共享的文件
- 设置共享文件所有人和所有组
(1)服务端
vim /etc/exports
/mnt 172.25.254.0/24(rw,async,anonuid=1001,anongid=1001)
exportfs -rv 刷新
(2)测试
客户端:创建文件
服务端:查看文件属性
- 延用客户端身份
(1)服务端:
vim /etc/exports
/mnt 172.25.254.0/24(rw,async,anonuid=1001,anongid=1001,no_root_squash)
exportfs -rv 刷新
(2)测试
客户端:创建文件
服务端:查看文件属性
- 转化客户端所有身份
(1)服务端
vim /etc/exports
/mnt 172.25.254.0/24(rw,async,anonuid=1001,anongid=1001,no_root_squash,all_squash)
exportfs -rv 刷新
(2)测试
客户端:创建文件
服务端:查看共享文件属性
四、Auto触发式目录挂载
- 触发式自动挂载
(1)实验准备
客户端:下载软件并
yum install autofs -y
systemctl start autofs.service ##开启服务
ls -ld /net可以看到该文件
(2)测试
cd /net/172.25.254.131/mnt
2. 自动卸载
(1)配置文件路径查看
rpm -qc autofs-5.0.7-56.el7.x86_64 ##查看配置文件
rpm -qa | grep autofs ##查看软件的版本
(1)自动卸载时间设定
vim /etc/sysconfig/autofs ##在该文件中可以更改自动断开的时间,默认时间为300s
TIMEOUT=3
systemctl restart autofs.service ##重启服务
(2)测试
- 客户端挂载目录设定
(1)挂载目录设定
vim /etc/auto.master
/mnt /etc/auto.nfs名称任意
systemctl restart autofs
只读挂载方式一
vim /etc/auto.nfs
westos -ro,vers=3 172.25.254.131:/mnt
只读挂载方式二
mount -o vers=3,ro 172.25.254.131:/mnt /media
(2)测试
cd /mnt/westos
df
4. 多目录挂载设定
(1)服务端
cd /mnt
rm -fr *
mkdir westos{1..3}
(2)客户端
vim /etc/auto.nfs
* -ro,vers=3 172.25.254.131:/mnt/&
systemctl restart autofs
(3)测试
cd /mnt/westos1
cd /mnt/westos2
cd /mnt/westos3