NFS是 Unix 系统和网络附加存储文件管理器常用的网络文件系统 , 允许多个客户端通过网络共享文件访问,它

可用于提供对共享二进制目录的访问 , 也可用于允许用户在同一工作组中从不同客户端访问其文件。

下面简单介绍NFS在系统中是如何实现文件共享服务的:

1.在服务端,搭建环境,下载nfs-utils软件用来提供nfs共享服务

yum install nfs-utils

systemctl start nfs-utils 启动服务

systemctl stop firewalld 关闭防火墙

mkdir /westos           建立共享目录  

touch /westos/hk{1..3}    在共享目录里建立文件

然后编辑nfs的配置文件,将共享目录信息写入进去:vim /etc/exports, 下图意为共享目录为/westos,* 代表所有用户可以访问,

rw表示客户端拥有读写权限,sync表示可以进行数据同步,anonudi=1000,anongid=1000表示指定共享目录在客户端被挂载后,

新建文件或目录的所有人所有组,这里的1000为student:

linux 设置nfs共享 linux开启nfs共享服务_nfs

然后输入 exportfs -rv 刷新文件,可以看到共享的目录:

linux 设置nfs共享 linux开启nfs共享服务_文件系统_02

2.在客户端查看并挂载被共享出来的目录:

showmount -e 172.25.254.121(服务端ip)可查看ip为172.25.254.121的主机共享出来的目录,

mount 172.25.254.121:/westos /mnt   将共享出来的目录挂载到/mnt目录上:

linux 设置nfs共享 linux开启nfs共享服务_linux_03

3.客户端可创建文件和删除文件,新建文件所有人所属组为student:

linux 设置nfs共享 linux开启nfs共享服务_linux_04

NFS在共享文件的时候是不受selinux的限制的,只需要关闭防火墙即可


客户端在使用共享目录时,需要用的时候挂载,不需要用的时候又要取手动卸载,比较麻烦,如果为了方便不卸载,又会占用系统进程和内存,而autofs自动挂在软件可以很好的解决这个问题,而且只针对NFS文件系统,下面简单介绍一下autofs软件自动挂载的配置步骤:

1.下载autofs自动挂载软件:

yum install autofs

systemctl start autofs 启动服务

vim /etc/autofs.conf   编辑配置文件,可设置自动卸载时间,如图将自动卸载时间修改为3S:

系统默认为300s,修改完成后重启服务: systemctl restrat autofs

linux 设置nfs共享 linux开启nfs共享服务_工作_05

修改为3s:

linux 设置nfs共享 linux开启nfs共享服务_文件系统_06

2.下载安装autofs软件以后会自动生成一个/net目录,cd/net/172.25.254.121/westos 便可实现自动挂载:

linux 设置nfs共享 linux开启nfs共享服务_工作_07

cd切换目录后3s自动卸载:

linux 设置nfs共享 linux开启nfs共享服务_nfs_08

3.指定目录的修改:mkdir /nfs  先建立一个目录

编辑文件: vim /etc/auto.master  将/nfs   /etc/auto.nfs编辑到文件中,/nfs为目标挂载点的上级目录,

/etc/auto.nfs为记录共享目录目标挂载点的文件:

linux 设置nfs共享 linux开启nfs共享服务_文件系统_09

编辑/etc/auto.nfs文件如下图所示:

linux 设置nfs共享 linux开启nfs共享服务_linux 设置nfs共享_10

systemctl restart autofs 重启服务

输入: cd /nfs/westos/便可实现自动挂载:

linux 设置nfs共享 linux开启nfs共享服务_工作_11

4.服务端将家目录共享出去,实现切换家目录用户时的自动挂载

在服务端建立共享目录:

linux 设置nfs共享 linux开启nfs共享服务_文件系统_12

修改/etc/exports文件如图所示,并刷新共享目录:

linux 设置nfs共享 linux开启nfs共享服务_linux_13

linux 设置nfs共享 linux开启nfs共享服务_linux_14

客户端:修改/etc/auto.master文件内容如图所示:

linux 设置nfs共享 linux开启nfs共享服务_linux_15

并修改 /etc/auto.nfs文件:

linux 设置nfs共享 linux开启nfs共享服务_linux 设置nfs共享_16

然后重启服务:systemctl restart autofs

在服务端进行测试,cd /home/student切换到/home/student目录时自动挂载,退出/home/student目录3s后自动卸载:

linux 设置nfs共享 linux开启nfs共享服务_linux 设置nfs共享_17

切换到student用户时,可看到自动挂载,并创建文件:

linux 设置nfs共享 linux开启nfs共享服务_nfs_18

然后切换到root用户可查看到student用户创建的文件:

linux 设置nfs共享 linux开启nfs共享服务_nfs_19