CentOS 上通过 NFS 挂载远程服务器硬盘

NFS(Network File System)是一种用于在不同的计算机系统之间共享文件和目录的协议。它允许一个计算机系统将其文件系统的一部分或全部内容暴露给其他计算机系统,使其能够像访问本地文件一样访问这些内容。在这篇博客中,我们将介绍如何在 CentOS 系统上通过 NFS 挂载远程服务器的硬盘。

步骤 1:配置远程服务器

在拥有硬盘内容的远程服务器上,需要进行以下配置:

  1. 安装 NFS 服务器软件:

    bash 复制代码
    sudo yum install nfs-utils
  2. 编辑 NFS 服务器配置文件 /etc/exports,添加需要共享的目录及其权限设置。例如,要共享 /data 目录:

    复制代码
    /data 192.168.1.0/24(rw,sync,no_root_squash)

    这里的 192.168.1.0/24 是允许访问的客户端 IP 范围,rw 表示读写权限,sync 表示同步写入,no_root_squash 允许以 root 用户身份访问。

  3. 启动 NFS 服务并设置开机启动:

    bash 复制代码
    sudo systemctl start nfs-server
    sudo systemctl enable nfs-server

步骤 2:在 CentOS 上挂载远程硬盘

在需要挂载远程硬盘的 CentOS 主机上进行以下操作:

  1. 安装 NFS 客户端软件:

    bash 复制代码
    sudo yum install nfs-utils
  2. 创建本地挂载点,例如 /mnt/remote_disk

    bash 复制代码
    sudo mkdir /mnt/remote_disk
  3. 使用 mount 命令挂载远程硬盘。假设远程服务器的 IP 地址为 192.168.1.100,共享的目录为 /data

    bash 复制代码
    sudo mount -t nfs 192.168.1.100:/data /mnt/remote_disk
  4. 验证挂载是否成功:

    bash 复制代码
    df -h   # 查看挂载点是否显示

步骤 3:自动挂载设置

为了在系统启动时自动挂载远程硬盘,可以进行如下设置:

  1. 编辑 /etc/fstab 文件,添加一行以自动挂载远程硬盘:

    bash 复制代码
    192.168.1.100:/data /mnt/remote_disk nfs defaults 0 0
  2. 使用以下命令重新加载 /etc/fstab 文件,确保没有错误:

    bash 复制代码
    sudo mount -a

现在,你已经成功地在 CentOS 系统上通过 NFS 挂载了远程服务器的硬盘。你可以在 /mnt/remote_disk 目录下访问远程硬盘的内容。记得根据你的实际情况修改 IP 地址、目录和权限设置。

步骤 4:测试写入速度

为了测试客户端向服务端的写入速度,我们可以使用 dd 命令。在客户端上执行以下命令:

bash 复制代码
dd if=/dev/zero of=/mnt/remote_disk/testfile bs=1M count=1000

在上述命令中,我们在客户端的挂载点 /mnt/remote_disk 下创建了一个名为 testfile 的文件,从 /dev/zero(一个虚拟的零设备)读取数据,并以 1MB 为块大小进行写入,总共写入 1000 个块。

执行完上述命令后,你可以查看文件写入所花费的时间,从而计算出写入速度。另外,你还可以尝试不同的块大小和数据量来测试不同的写入情况。

相关推荐
m0_748254096 分钟前
2025最新华为云国际版注册图文流程-不用绑定海外信用卡注册
服务器·数据库·华为云
MUY099014 分钟前
应用控制技术、内容审计技术、AAA服务器技术
运维·服务器
Sadsvit1 小时前
源码编译安装LAMP架构并部署WordPress(CentOS 7)
linux·运维·服务器·架构·centos
xiaok1 小时前
为什么 lsof 显示多个 nginx 都在 “使用 443”?
linux
苦学编程的谢1 小时前
Linux
linux·运维·服务器
G_H_S_3_2 小时前
【网络运维】Linux 文本处理利器:sed 命令
linux·运维·网络·操作文本
Linux运维技术栈2 小时前
多系统 Node.js 环境自动化部署脚本:从 Ubuntu 到 CentOS,再到版本自由定制
linux·ubuntu·centos·node.js·自动化
拾心212 小时前
【运维进阶】Linux 正则表达式
linux·运维·正则表达式
Gss7773 小时前
源代码编译安装lamp
linux·运维·服务器
444A4E3 小时前
深入理解Linux进程管理:从创建到替换的完整指南
linux·c语言·操作系统