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 个块。

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

相关推荐
Xu_youyaxianshen6 小时前
[特殊字符] Docker 小白极速入门笔记
linux·docker
getapi6 小时前
FinalShell 连接 CentOS 7 文件管理失败修复教程
linux·运维·centos
沉默-_-6 小时前
【Servlet】浏览器与服务器的交互
服务器·servlet·交互
程序员学习随笔6 小时前
ext4 原理篇(三):日志子系统 Journal 深度剖析 —— 如何保障数据一致性?
linux·c++
OxyTheCrack6 小时前
【C++】一篇文章悲观锁与乐观锁与其思想在C++语言中的应用
linux·开发语言·数据库·c++·笔记
国产化创客6 小时前
OpenClaw在树莓派全流程安装部署
linux·人工智能·github·agi
ZhengEnCi7 小时前
Linux基础技术专栏
linux
小峰编程7 小时前
二进制安装Nginx——详细
linux·运维·服务器·nginx·云原生
刚入坑的新人编程7 小时前
Linux-cgdb
linux·运维·服务器
无限码农7 小时前
2.1 网络编程 异步网络库zvnet
服务器·网络·php