NFS是一种网络文件系统,英文全称Network File System,通过NFS可以让不同的主机系统之间共享文件或目录。通过NFS,用户可以直接在本地NFS客户端读写NFS服务端上的文件,是非常好的共享存储工具。本篇文章将介绍如何在CentOS7上安装NFS服务器,包括服务端和客户端安装两部分。


服务端安装:

一、下载安装nfs-utils

首先,切换为root用户并使用yum包管理工具下载并安装nfs-utils,这是NFS服务的基础工具。

su #切换为root用户
yum install -y nfs-utils #使用yum下载安装nfs

二、创建共享文件夹

在服务器上创建一个名为 share 的文件夹,并设置全权限以确保远程客户端能够正确访问。

mkdir /share #创建名为share的文件夹
chmod 777 /share #给share文件夹777全权限

Linux系统安装NFS服务器-LMLPHP


三、编辑配置文件

使用vi编辑器打开/etc目录下的exports文件,并在其中添加以下配置,定义共享目录的相关权限。

vi /ect/exports #用vi编辑器打开/ect/目录下的exports文件

在 exports 文件里写入以下内容:

/share *(rw,sync,no_root_squash,no_all_squash)
#/share: 共享目录位置。
#*: 客户端 IP 范围,* 代表所有,即没有限制。
#rw: 权限设置,可读可写。
#sync: 同步共享目录。
#no_root_squash: 可以使用 root 授权。
#no_all_squash: 可以使用普通用户授权。

Linux系统安装NFS服务器-LMLPHP


四、开启nfs和rpcbind服务

重启rpcbindnfs-server服务,并设置它们在系统启动时自动启动。此外,确保防火墙已打开rpc-bindnfs的服务端口。

systemctl restart rpcbind #重启rpcbind服务
systemctl restart nfs-server #重启nfs-server服务
systemctl  enable  rpcbind #设置rpcbind服务开机自启
systemctl  enable  nfs-server#设置nfs-server服务开机自启
firewall-cmd --zone=public --permanent --add-service={rpc-bind,mountd,nfs}
firewall-cmd --reload #防火墙需要打开 rpc-bind 和 nfs 的服务

Linux系统安装NFS服务器-LMLPHP


五、检查共享文件夹挂载

通过showmount命令检查共享文件夹是否已正确挂载。

showmount -e localhost #检查共享文件夹的挂载

六、查询 NFS 工作状态

使用systemctl命令查询NFS服务的状态,可以进行启动、停止和重启等操作。

systemctl status nfs #查询服务状态
systemctl stop nfs #停止服务
systemctl start nfs #开启服务
systemctl restrart nfs #重启服务

Linux系统安装NFS服务器-LMLPHP

如果NFS服务正常工作,状态为Active,说明配置成功!

通过这一系列步骤,您已经成功安装和配置了NFS服务端,确保了文件夹的共享和远程访问。这对于构建分布式系统中的文件共享和访问提供了可靠的基础。


客户端安装:

一、安装nfs-utils并创建目录

在客户端,首先切换为 root 用户,然后使用 yum 包管理工具下载并安装 nfs-utils。接着,创建一个名为 client-share 的目录,并赋予它全权限。

su #切换为root用户
yum install -y nfs-utils #使用yum下载安装nfs
mkdir /client-share #创建名为client-share的目录
chmod 777 /client-share #给client-share文件夹777全权限

二、执行 NFS 挂载

使用 mount 命令挂载NFS文件系统:

mount -t nfs LinuxIPAddress:/client-share /client-share #执行nfs挂载

通过上述命令,我们在本地的目录 /client-share 下挂载了远程主机(LinuxIPAddress)上的 /client-share 目录。这使得远程文件系统成为本地文件系统的一部分,可以直接在本地进行访问和操作。

查看挂载是否成功:

mount #查看挂载是否成功

执行 mount 命令可以查看当前系统上已经挂载的文件系统,确保NFS的挂载是否成功。在输出中应该能够找到对应的挂载点。


三、测试 NFS

通过以下步骤测试NFS的正确性:

在客户端向共享目录创建一个文件a:

touch /client-share/a #在客户端向共享目录创建一个文件a

接着去NFS服务端查看,验证是否成功写入文件a:

进入NFS服务端,进入相应的共享目录,查看是否能够找到文件a:

#接着去 NFS 服务端 查看,看到共享目录已经成功写入文件a。
cd /server-share ls

如果在NFS服务端的共享目录中看到了文件a,那么说明NFS的挂载和写入操作都成功了。

通过这一系列步骤,我们实现了NFS的挂载和简单的写入操作验证。这是在分布式系统中实现文件共享和访问的一种有效手段,确保文件系统在不同机器之间的一致性和互操作性。

01-21 08:13