Loading...
墨滴

我的小碗汤

2022/01/15  阅读:45  主题:山吹

CentOS 7 下 yum 安装和配置 NFS

环境说明

# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)

本例演示环境如下: NFS服务端:172.0.0.1 NFS客户端:172.0.0.2

服务端安装

使用 yum 安装 NFS 安装包。

sudo yum install nfs-utils -y

注意

只安装 nfs-utils 即可,rpcbind 属于它的依赖,也会安装上。

服务端配置

设置 NFS 服务开机启动

sudo systemctl enable rpcbind
sudo systemctl enable nfs

启动 NFS 服务

sudo systemctl start rpcbind
sudo systemctl start nfs

防火墙需要打开 rpc-bind 和 nfs 的服务

$ sudo firewall-cmd --zone=public --permanent --add-service={rpc-bind,mountd,nfs}
success
$ sudo firewall-cmd --reload
success

配置共享目录

服务启动之后,我们在服务端配置一个共享目录

sudo mkdir /nfsdata
sudo chmod 755 /nfsdata

/etc/exports这个文件中配置导出目录,添加如下配置

# sudo vi /etc/exports
/nfsdata/     172.0.0.0/8(rw,sync,no_root_squash,no_all_squash)
  1. /data: 共享目录位置。
  2. 172.0.0.0/8: 客户端 IP 范围,* 代表所有,即没有限制。
  3. rw: 权限设置,可读可写。
  4. sync: 同步共享目录。
  5. no_root_squash: 可以使用 root 授权。
  6. no_all_squash: 可以使用普通用户授权。

:wq 保存设置之后,重启 NFS 服务。

sudo systemctl restart nfs

可以检查一下本地的共享目录

$ showmount -e localhost
Export list for localhost:
/nfsdata 172.0.0.0/8

这样,服务端就配置好了,接下来配置客户端,连接服务端,使用共享目录。

客户端安装

与服务端类似

sudo yum install nfs-utils -y

客户端配置

设置 rpcbind 服务的开机启动

sudo systemctl enable rpcbind

启动 NFS 服务

sudo systemctl start rpcbind

注意

客户端不需要打开防火墙,因为客户端时发出请求方,网络能连接到服务端即可。
客户端也不需要开启 NFS 服务,因为不共享目录。

客户端连接 NFS

先查服务端的共享目录

$ showmount -e 172.0.0.1
Export list for 172.0.0.1:
/data 172.0.0.0/8

在客户端创建目录

sudo mkdir /nfsdata

挂载

sudo mount -t nfs 172.0.0.1:/nfsdata /nfsdata

挂载之后,可以使用 mount 命令查看一下

$ mount
172.0.0.1:/nfsdata on /nfsdata type nfs4 (rw,relatime,vers=4.1,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=172.0.0.2,local_lock=none,addr=172.0.0.1)

这说明已经挂载成功了。

测试 NFS

测试一下,在客户端向共享目录创建一个文件

cd /nfsdata
sudo touch a

之后到 NFS 服务端 172.0.0.1 查看一下

cd /nfsdata
$ ll
total 0
-rw-r--r-- 1 root root 0 Jan 15 16:19 a

可以看到,共享目录已经写入了。

客户端自动挂载

自动挂载很常用,客户端设置一下即可。

sudo vi /etc/fstab

在结尾添加类似如下配置


#
# /etc/fstab
# Created by anaconda on Thu May 25 13:11:52 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
# 省略

172.0.0.1:/nfsdata     /nfsdata       nfs     defaults    0 0

由于修改了 /etc/fstab,需要重新加载 systemctl

sudo systemctl daemon-reload

之后查看一下

$ mount
172.0.0.1:/nfsdata on /nfsdata type nfs4 (rw,relatime,vers=4.1,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=172.0.0.2,local_lock=none,addr=172.0.0.1)

此时已经启动好了。如果实在不放心,可以重启一下客户端的操作系统,之后再查看一下。

参考

CentOS 7 下 yum 安装和配置 NFS

原文

本文首发于微信公众号【我的小碗汤】,扫码关注,了解更多咨询,更有免费资源供您学习

扫码关注,加群学习
扫码关注,加群学习

我的小碗汤

2022/01/15  阅读:45  主题:山吹

作者介绍

我的小碗汤

公众号:我的小碗汤