NFS(Network File System)

即网络文件系统,它允许网络中的计算机之间共享资源,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。


一个服务器的容量始终有限,除了增加磁盘,还有一种方式能够达到这个目的。本篇博客就将带领各位使用NFS将HTTP服务中的数据储存在远程的服务器中,并能随时读写。

事先准备:

两台Centos7的虚拟机(一台作为服务器,另一台作为客户端)

实验步骤:

一、服务器端的实验

首先,为服务器增添一块磁盘作为接下来NFS提供出去的载体。

实验步骤:

1、为虚拟机添加磁盘并重启虚拟机;
2、输入:fdisk /dev/sdb //进入磁盘管理工具
3、按“n”创建,并全部使用默认设置,
最后按“w”保存退出
4、输入:mkfs.xfs /dev/sdb1 //创建xfs格式文件系统
5、输入:mount /dev/sdb1 /mnt/ //将新磁盘挂载到/mnt目录下
实例如下
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)

接下来,为服务器安装nfs-utils软件包以及rpcbind软件包(关键服务!)

实验步骤:

1、输入:yum install nfs-utils rpcbind -y //安装关键软件包
2、输入:systemctl enable nfs //设置nfs服务开机自启
3、输入:systemctl enable rpcbind //设置rpcbind服务开机自启
实例:
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)

最后,进行设置并提供服务

实验步骤:
1、输入:vim /etc/exports //设置共享配置文件

在配置文件内
(1)按“I”插入
(2)输入:/mnt/ 192.168.116.132/24(rw,sync,no_root_squash)
——其中mnt目录代表挂载点,“192.168.116.132/24”代表服务接受方IP及子网掩码,括号内代表该空间可读可写,与服务器同步,不可降级操作。
(3)输入“:wq”保存退出
实例如下
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)

2、输入:systemcrl start nfs //启动nfs服务
3、输入:systemctl start rpcbind //启动rpcbind服务
4、输入:showmount -e //检查
5、输入:systemctl stop fireswalld //关闭防火墙
6、输入:setenforce 0 //关闭增强性安全功能
实例
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)

上面就是NFS服务器端的全部配置,下面需要进行的就是在客户端检查是否能够使用服务器提供的空间。

二、客户端的验证

安装HTTP服务用于验证,并将远程共享的磁盘空间挂载到HTTP服务默认路径下

实验步骤:

1、输入:yum install httpd -y //安装HTTP服务
2、输入:vim /etc/fstab //进行自动挂载设置

在文件中:
(1)按“G”进入文章末行,按“o”下一行插入
(2)输入:192.168.116.131:/mnt /var/www/html nfs defaults,_netdev 0 0
——其中,“192.168.116.131:/mnt”代表NFS提供的远程空间位置
“/var/www/html”代表挂载点(/var/www/html为http服务默认路径)
(3)输入“:wq”保存退出
实例
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)
3、输入:mount -a //挂载所有
4、输入:df -hT //查看挂载情况
实例
NFS网络文件系统详解(妈妈再也不用担心服务器磁盘不足了!!!)

重要提醒!!!

若提供远程磁盘空间的服务器突然宕机,此时在客户端上使用df命令会导致客户端彻底卡死。这个时候,用umount命令是无法进行解挂的!!!!
需要使用另一个新的终端进入,使用“umount -lf”命令进行解挂。

(千万!!!千万!!!千万!!!不要用TAB键进行补全,博主亲测,用一次炸一次。)