NFS文件系统简介
网络文件系统(NFS)是Unix系统和网络附加存储文件管理器常用的网络文件系统,允许多个客户端通过网络共享文件访问。它可用于提供共享二进制目录的访问,也可用于允许用户在同一工作组中从不同客户端访问文件
NFS协议有很多版本:linux支持版本4,版本3,版本2,而大多数系统管理员熟悉NFSv。默认情况下,该协议并不安全。但是更新的版本(NFSv4)提供了对更安全身份验证的支持,甚至可以通过Kerberos进行加密
1.NFS文件系统的配置使用
1.在服务端安装nfs服务软件nfs-utils
yum install nfs-utils
2.开启nfs服务
systemctl start nfs-server
3.修改/etc/exports文件
vim /etc/exports
/westos *(sync,ro)
4.刷新文件
exportfs -rv
5.需要手动挂载,挂载完成后,设备是一直被占用的,显然比较浪费空间。
showmount -e 172.25.254.117
mount 172.25.254.117:/westos /mnt
df
2.autofs自动挂载
1.服务端关闭防火墙并设置防火墙开机不自启
systemctl stop firewalld
systemctl disable firewalld
2.在客户端安装autofs安装自动挂载软件
yum install autofs
3.开启autofs服务
systemctl start autofs
开启autofs服务前/net是不存在的
开启autofs服务后创建了/net
在/net目录中使用ls命令查看内容发现里边没东西,可是直接进入172.25.254.117,可以看到我们共享的目录/westos
4.df命令查看目前挂载情况,发现只要进入上边那个目录自动挂载好了
5.当我们退出目录.会自动取消挂载,配置文件中默认设定为300s
6.需要的时候自动挂载,不需要的时候一段时间后自动卸载
vim /etc/sysconfig/autofs
13行: TIMEOUT=5
systemctl restart autofs.service
设置完成后退出目录等待5s自动卸载
3.修改autofs默认挂载目录
vim /etc/auto.master
/pub /etc/auto.pub ##/pub最终挂载点的上层目录 /etc/auto.pub指定的文件
head /etc/auto.master
2.读写挂载
vim /etc/auto.pub
cat /etc/auto.pub
westos 172.25.254.117:/westos ##westos最终挂载点 172.25.254.117:/westos挂载设备
3.重启autofs服务
systemctl restart autofs.service ##重启autofs服务
4.查看挂载情况
mount ##rw,relatime,vers=4.0
5.只读挂载
vim /etc/auto.pub
westos -ro,vers=3 172.25.254.117:/westos ##westos最终挂载点 -ro,vers=3挂载参数 172.25.254.117:/westos挂载设备
6.重启autofs服务
systemctl restart autofs.service ##重启autofs服务
7.查看挂载情况
mount ##ro,relatime,vers=3
4.NFS服务器的配置
服务端:
systemctl status nfs
systemctl enable nfs-server
原来客户端是无法在共享目录下写入文件的
1.实现客户端可以在共享目录下写入和删除文件:
服务端:
vim /etc/exports
/westos *(sync,rw)
exportfs -rv
客户端:
vim /etc/auto.pub
westos -rw,vers=3 172.25.254.117:/westos
systemctl restart autofs.server
客户端测试:
创建的文件所有人和所有组是nfsnobody(黑户)
2.实现客户端使用的共享身份是root
服务端:
vim /etc/exports
/westos *(sync,rw,no_root_squash) ##使用的共享身份是root
exportfs -rv
客户端测试:
创建的文件所有人和所有组是root
3.实现客户端使用的共享身份指定为特定用户
服务端:
vim /etc/exports
/westos *(sync,rw,anonuid=1001,anongid=1000) ##使用的共享身份指定为特定用户
exportfs -rv
客户端测试:
共享目录下创建的文件所有人uid是1001,所有组gid是1000=student
4.实现只有172.25.254.217客户端可以读写,其他客户端不可以
服务端:
vim /etc/exports
/westos 172.25.254.217(sync,rw,anonuid=1001,anongid=1000) *(ro)
exportfs -rv
客户端测试:
经测试,客户端IP是172.25.254.217,可读写
在另一台客户端(172.25.254.117)测试:
mount 172.25.254.117:/westos /mnt ##挂载
其他客户端无法在共享目录读写