NFC文件系统

网络文件系统(NFS)是Unix系统和网络附加存储文件管理器常用的网络文件系统,允许多个客户端通过网络共享文件访问。它可用于提供共享二进制目录的访问,也可用于允许用户在同一工作组中从不同客户端访问文件
NFS协议有很多版本:linux支持版本4,版本3,版本2,而大多数系统管理员熟悉NFSv。默认情况下,该协议并不安全。但是更新的版本(NFSv4)提供了对更安全身份验证的支持,甚至可以通过Kerberos进行加密

 一.NFS文件系统的配置使用
1.在服务端安装nfs服务软件nfs-utils

yum install nfs-utils

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录

2.开启nfs服务

systemctl start nfs-server	##注意:此服务开启后不要轻易关闭
showmount -e 172.25.250.147	##显示此机中的所有共享

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_02

Linux查看nfs挂目录 linux 查看nfs版本_客户端_03

3.修改/etc/exports文件

vim /etc/exports
/westos  *(sync,ro)   			
##*表示/wetsos中目录下所有的文件;sync:同步共享;ro:只读共享

Linux查看nfs挂目录 linux 查看nfs版本_vim_04

Linux查看nfs挂目录 linux 查看nfs版本_客户端_05

4.刷新文件

exportfs -rv
showmount -e 172.25.250.147	##显示此机中的所有共享,此时有共享目录出现。

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_06

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_07

5.手动挂载,挂载完成后,设备是一直被占用的,比较浪费空间,因为不需要用的时候,还是挂载着。

mount 172.25.254.147:/westos /mnt
df
umount /mnt  ##卸载掉,为下一步实验做准备
df

Linux查看nfs挂目录 linux 查看nfs版本_vim_08

Linux查看nfs挂目录 linux 查看nfs版本_客户端_09

二.autofs自动挂载
1.服务端关闭防火墙并设置防火墙开机不自启

systemctl stop firewalld
systemctl disable firewalld

Linux查看nfs挂目录 linux 查看nfs版本_客户端_10

2.在客户端安装autofs安装自动挂载软件

yum install autofs

Linux查看nfs挂目录 linux 查看nfs版本_客户端_11

3.开启autofs服务

systemctl start autofs

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_12

 

开启autofs服务前/net是不存在的

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_13


开启autofs服务后创建了/net

Linux查看nfs挂目录 linux 查看nfs版本_客户端_14

在/net目录中使用ls命令查看内容发现里边没东西,直接进入172.25.254.147,可以看到共享的目录/westos

Linux查看nfs挂目录 linux 查看nfs版本_客户端_15

4.进入westos实现自动挂载,df命令查看目前挂载情况,发现只要进入上边那个目录自动挂载好了4.进入westos实现自动挂载,df命令查看目前挂载情况,发现只要进入上边那个目录自动挂载好了

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_16

5.当我们退出目录.会自动取消挂载,配置文件中默认设定为300s

6.需要的时候自动挂载,不需要的时候一段时间后自动卸载

vim /etc/sysconfig/autofs 
13行: TIMEOUT=5
systemctl restart autofs.service

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_17

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_18

设置完成后退出目录等待5s自动卸载

Linux查看nfs挂目录 linux 查看nfs版本_客户端_19

三.修改autofs默认挂载目录

1.编辑配置文件

vim /etc/auto.master 
/pub 	/etc/auto.pub      ##/pub是最终挂载点的上层目录  /etc/auto.pub是指定的文件
注意:/etc/auto.pub此文件也不存在,需要我们自己建立

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_20

2.读写挂载

vim /etc/auto.pub    
westos     172.25.254.147:/westos     ##westos最终挂载点  172.25.254.117:/westos挂载设备

Linux查看nfs挂目录 linux 查看nfs版本_vim_21

3.重启autofs服务

systemctl restart autofs.service     ##重启autofs服务,可以看到,/pub/westos出现

Linux查看nfs挂目录 linux 查看nfs版本_客户端_22

4.进入/pub/share,可以看到自动挂载

Linux查看nfs挂目录 linux 查看nfs版本_客户端_23

mount  ##查看挂载情况,可以看到 rw,relatime,vers=4.0

Linux查看nfs挂目录 linux 查看nfs版本_客户端_24

5.只读挂载

vim /etc/auto.pub
westos   -ro,vers=3  172.25.254.147:/westos ##westos最终挂载点  -ro,vers=3挂载参数 172.25.254.117:/westos挂载设备

Linux查看nfs挂目录 linux 查看nfs版本_客户端_25

6.重启autofs服务

systemctl restart autofs.service     ##重启autofs服务

Linux查看nfs挂目录 linux 查看nfs版本_vim_26

7.查看挂载情况

此时上一步没退出/pub/westos的要退出次目录,再次进入/pub/westos实现自动挂载
mount       ##查看挂载情况,可以看到,ro,relatime,vers=3

Linux查看nfs挂目录 linux 查看nfs版本_客户端_27

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_28

四.NFS服务器的配置

服务端:

systemctl status nfs
systemctl start nfs
systemctl enable nfs-server

Linux查看nfs挂目录 linux 查看nfs版本_客户端_29

 

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_30

1.原来客户端是无法在共享目录下写入文件的
实现客户端可以在共享目录下写入和删除文件:
服务端:

vim /etc/exports
/westos  *(sync,rw)
exportfs -rv
chmod 777 /westos  ##给westos目录权限,否则,在客户端上传文件时,显示权限被否定

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_31

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_32

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_33

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_34

客户端:

vim /etc/auto.pub
westos   -rw,vers=3  172.25.254.147:/westos  ##ro:只读挂载;vres=3:版本是3
cd  ##等5s
cd /pub/westos
df
systemctl restart autofs.server

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_35

Linux查看nfs挂目录 linux 查看nfs版本_vim_36

Linux查看nfs挂目录 linux 查看nfs版本_客户端_37

创建的文件所有人和所有组是nfsnobody(黑户)

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_38

2.实现客户端使用的共享身份是root
服务端:

vim /etc/exports
/westos  *(sync,rw,no_root_squash)			##使用的共享身份是root
exportfs -rv

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_39

客户端测试:

cd  ##等5s
cd /pub/westos
df
ls
touch file2
-rw-r--r-- 1 root      root      0 Nov 24 20:30 file2  ##创建的文件所有人和所有组是root

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_40

3.实现客户端使用的共享身份指定为特定用户
服务端:

vim /etc/exports
/westos  *(sync,rw,anonuid=1001,anongid=1000) 		##使用的共享身份指定为特定用户
exportfs -rv

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_41

客户端测试:

cd  ##等5s
cd /pub/westos
df
ls
touch file3
-rw-r--r-- 1      1001 student   0 Nov 24 20:32 file3  ##共享目录下创建的文件所有人uid是1001,所有组gid是1000
id student

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_42

4.实现只有172.25.254.247客户端可以读写,其他客户端不可以
服务端:

vim /etc/exports
/westos  172.25.254.247(sync,rw,anonuid=1001,anongid=1000) *(ro)
exportfs -rv

Linux查看nfs挂目录 linux 查看nfs版本_Linux查看nfs挂目录_43

客户端测试:

cd  ##等5s
cd /pub/westos
df
ll
touch file4
-rw-r--r-- 1      1001 student   0 Nov 24 20:32 file4

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_44

因为客户端IP是172.25.254.247,可读写
在另一台客户端测试:

mount 172.25.254.147:/westos /mnt  ##挂载
df
cd /mnt/
touch file5
显示Read-only file system
其他客户端无法在共享目录读写

Linux查看nfs挂目录 linux 查看nfs版本_客户端_45

Linux查看nfs挂目录 linux 查看nfs版本_自动挂载_46