如何在Linux上搭建NFS服务器 (linux nfs服务器搭建)

NFS(Network File System)是一种分布式文件系统,允许其它计算机系统通过网络来访问一个文件系统。NFS 通常是在 UNIX 环境下使用,可以让 Unix/Linux 系统之间方便地分享文件和目录。在本文中,我将介绍如何在 Linux 上搭建 NFS 服务器。

之一步:准备服务器

需要一个 Linux 服务器。你可以选择你所熟悉的 Linux 发行版,例如 CentOS、Ubuntu、Fedora 等。确保你已经通过 root 用户或者 sudo 用户登录到服务器上。

第二步:安装 NFS 软件包

接下来,需要在服务器上安装 NFS 软件包。NFS 服务器主要有两个软件包:

– nfs-kernel-server : 这是一个内核级别的 NFS 服务器,提供 NFS 服务。

– nfs-common : 这是一个 NFS 共享资源的通用包。

使用以下命令可以在 Ubuntu 上安装 NFS:

“`

sudo apt-get install nfs-kernel-server nfs-common

“`

使用以下命令可以在 CentOS 上安装 NFS:

“`

sudo yum install nfs-utils nfs-utils-lib

“`

第三步:创建共享目录

创建 NFS 共享目录是 NFS 服务器的主要任务之一。要创建一个共享目录,可以使用以下命令:

“`

sudo mkdir /mnt/nfs_share

sudo chmod -R 777 /mnt/nfs_share

“`

上面的命令将在 /mnt 目录下创建一个名为 nfs_share 的目录,并设置它的权限为 777。

第四步:配置 NFS 服务端

在这一步中,我们需要配置 NFS 服务器以确保其它设备能够访问服务器的共享目录。

1. 打开 /etc/exports 文件

使用编辑器打开 /etc/exports 文件,以添加共享目录配置。

“`

sudo vi /etc/exports

“`

2. 配置共享目录

添加以下行到 /etc/exports 文件中,以指定共享目录的 IP 地址和共享方式:

“`

/mnt/nfs_share client_ip(rw,sync,no_subtree_check)

“`

在上面的命令中:

– /mnt/nfs_share : 共享目录的路径。

– client_ip : 需要访问该目录的客户端的 IP 地址。如果是一个LAN中多个客户端可共享文件,可以使用 * 来指定共享网络。

– rw : 该参数指定该共享目录的访问权限。rw 表示可读可写,ro 表示只读,noaccess 表示禁止访问。

– sync : 指定在数据传输时同步写入,并在写入确认后返回应答。

– no_subtree_check : 该参数用于禁止对 NFS 子树中的每个目录都检查导出的目录权限。

如果你想要添加多个共享目录,可以像这样添加:

“`

/mnt/nfs_share1 client_ip1(rw,sync,no_subtree_check)

/mnt/nfs_share2 client_ip2(ro,sync,no_subtree_check)

“`

3. 激活新的 NFS 导出

在更新/添加 NFS 服务时,你需要重新启动 NFS 服务器或者重新加载配置文件。

在 CentOS 7 上,使用以下命令重新加载配置文件:

“`

sudo exportfs -a

sudo systemctl restart nfs-server

“`

在 Ubuntu 上,使用以下命令重新加载配置文件:

“`

sudo exportfs -a

sudo systemctl restart nfs-kernel-server

“`

第五步:客户端连接 NFS

现在,你已经在服务器上成功搭建了 NFS 服务器并共享了一个指定的目录。在这一步中,我们将从客户端连接到 NFS 服务器。

1. 安装 NFS 客户端软件包

在客户端上安装 NFS 客户端软件包。在 Ubuntu 中,可以使用以下命令安装客户端软件包:

“`

sudo apt-get install nfs-common

“`

在 CentOS 中,可以使用以下命令安装客户端软件包:

“`

sudo yum install nfs-utils nfs-utils-lib

“`

2. 挂载 NFS 共享目录

使用以下命令将 NFS 共享目录挂载到本地目录上:

“`

sudo mount -t nfs server_ip:/mnt/nfs_share /mnt/nfs_share

“`

在上面的命令中,你需要设置以下值:

– server_ip : 服务器的 IP 地址。

– /mnt/nfs_share : 服务器端共享目录的路径。

– /mnt/nfs_share : 本地客户端挂载目录的路径。

3. 测试 NFS 挂载

现在,在客户端上,在挂载的目录中创建一个新的文件,并在其中写入一些数据:

“`

echo “test nfs mount” > /mnt/nfs_share/nfs_test.txt

“`

然后在服务器上检查刚刚创建的文件内容:

“`

cat /mnt/nfs_share/nfs_test.txt

“`

如果你在服务器上的终端查看到了 “test nfs mount” 的内容,那么你已经成功通过 NFS 共享文件并在客户端问该文件。

结论

在本文中,我们已经介绍了如何在 Linux 上搭建 NFS 服务器并共享文件。虽然 NFS 的安全性不如 Samba,但它为多台Linux系统之间的文件共享提供了一种很好的解决方案。如果你需要在你的 Linux 系统之间共享文件,NFS 是一个很好的选择。


数据运维技术 » 如何在Linux上搭建NFS服务器 (linux nfs服务器搭建)