更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux教程 > 在Rocky Linux 8系统上安装和配置NFS服务器

在Rocky Linux 8系统上安装和配置NFS服务器

更新时间:2023-02-20 16:12:40浏览次数:537+次

本指南旨在帮助您在Rocky Linux 8系统上安装和配置NFS服务器。在配置之前,要准备两台主机,一台是NFS服务器(Rocky Linux 8),另一台是NFS客户端,它们使用不同的主机名和IP地址。同时,确保服务器具有sudo访问权限,并且主机名配置正确。假设NFS服务器(Rocky Linux 8)主机名为nfs.computingforgeeks.com,其IP地址为192.168.205.2,而NFS客户端主机名为nfsclient1.computingforgeeks.com,其IP地址为192.168.205.4。

在Rocky Linux 8系统上安装和配置NFS服务器的详细方法

步骤1、在Rocky Linux 8上安装和配置NFS服务器

NFS包在默认的Rocky Linux存储库中可用,可以使用以下命令安装:

sudo dnf install nfs-utils

会返回类似以下信息,可按y键回车安装:

nfs-utils  x86_64  1:2.3.3-46.el8  baseos  499k

Upgrade  1 Package

Total download size: 499k

Is this ok [y/N]: y

完成后,在/etc/idmapd.conf文件中对NFS服务器进行域名配置。idmapd是负责提供NFSv4内核客户端和服务器功能的守护程序。它将用户和组ID转换为名称,反之亦然,从而确保服务器客户端通信:

sudo sed -i '/^#Domain/s/^#//;/Domain = /s/=.*/= computingforgeeks.com/' /etc/idmapd.conf

注:记住用域名替换computingforgeeks.com,比如用hmxthome.com。

步骤2、定义NFS服务器共享目录

这在/etc/exports文件中配置。此文件包含NFS客户端可以访问的物理文件系统表。因此,我们需要编辑和添加要共享/导出到NFS客户端的文件系统。

添加的文件系统应遵循以下结构:

export host(options)

在命令中:

export指要装载在远程主机上的文件系统或目录。

host是允许访问导出文件的NFS客户端。它可以是单个主机(域名、IPv4或IPv6地址)、IP网络、通配符、网络组或匿名。

optionst这是一个用逗号分隔的选项列表,它们包括:所有类、no_root_squash、root_squash、安全、rw、ro、异步、同步、子树检查、no_wdelay、wdelay。

使用man exports命令可以找到更多信息。

在本指南中,我们将/home和/var/nfs/share导出到主机192.168.205.12。

创建具有正确权限的目录:

sudo mkdir /var/nfs/share -p

sudo chown nobody:nobody /var/nfs/share

因此,我们将添加如下目录:

$ sudo vim /etc/exports

/home 192.168.205.4(rw,sync,no_root_squash,no_subtree_check)

/var/nfs/share 192.168.205.4(rw,sync,no_subtree_check)

我们为远程主机上的用户添加了读写权限。保存文件并允许服务通过防火墙:

sudo firewall-cmd --add-service={nfs,nfs3,mountd,rpc-bind} --permanent

sudo firewall-cmd --reload

现在启动并启用NFS服务以在启动时自动运行:

sudo systemctl enable --now nfs-server rpcbind

检查NFS服务器服务的状态:

$ systemctl status nfs-server

\

步骤3、安装和配置NFS客户端

NFS客户端可以是/etc/exports中添加的任何系统,并且其上安装了文件系统。

首先,首先在客户端上安装NFS包,如下所示:

##在Debian/Ubuntu上

sudo apt install nfs-common

##在RHEL/CentOS/Rocky Linux/ Alma Linux上

sudo dnf install nfs-utils -y

同样,在/etc/idmap.conf中编辑域名,就像我们对NFS服务器所做的那样:

sudo sed -i '/^#Domain/s/^#//;/Domain = /s/=.*/= computingforgeeks.com/' /etc/idmapd.conf

在继续并装载共享目录之前,请验证NFS客户端上是否可以发现共享目录:

sudo showmount -e nfs.computingforgeeks.com

sudo showmount -e 192.168.205.4

样本输出:

Export list for nfs.computingforgeeks.com:

/var/nfs/share 192.168.205.4

/home          192.168.205.4

创建装载点:

sudo mkdir /mnt/home

sudo mkdir /mnt/share

现在您可以装载共享目录了:

sudo mount -t nfs nfs.computingforgeeks.com:/home /mnt/home

sudo mount -t nfs nfs.computingforgeeks.com:/var/nfs/share /mnt/share

验证目录是否已装入:

$ df -h

输出信息如下截图所示:

\

下面,我们将在NFS客户端上配置永久装载点。

上述方法为临时装载目录,需要在引导后重新装载。为了使挂载持久化,我们需要添加一个fstab条目,如下所示:

$ sudo vim /etc/fstab

nfs.computingforgeeks.com:/var/nfs/share      /mnt/share     nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0

nfs.computingforgeeks.com:/home               /mnt/home      nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0

注:记住用nfs服务器域名/IP地址替换nfs.computingforgeeks.com。

步骤4、测试NFS访问

现在,我们将尝试从NFS客户端写入共享目录,如下所示:

sudo touch /mnt/share/test.txt

查看权限:

$ ls -l /mnt/share/test.txt

-rw-r--r-- 1 nobody nogroup 0 Feb 20 04:22 /mnt/share/test.txt

结论

在本指南中,我们系统地介绍了如何在Rocky Linux 8上安装和配置NFS服务器。在以上内容中,我们已经演示了如何使用NFS客户端远程访问共享NFS文件。