在CentOS 7下部署NFS的详细教程

在CentOS 7下部署NFS的详细教程

NFS(Network File System)是一种分布式文件系统协议,允许用户在网络中的不同主机之间共享文件和目录。NFS广泛应用于Linux和Unix系统中,特别适合在集群环境中共享存储资源。本文将详细介绍如何在CentOS 7上部署NFS服务。

1. 环境准备

在开始之前,请确保你有两台CentOS 7的机器:

  • NFS Server:用于提供共享目录的服务器。
  • NFS Client:用于挂载和使用共享目录的客户端。

假设:

  • NFS Server的IP地址为:192.168.1.100
  • NFS Client的IP地址为:192.168.1.101

2. 在NFS Server上安装和配置NFS

2.1 安装NFS服务

首先,在NFS Server上安装NFS相关的软件包:

bash 复制代码
sudo yum install -y nfs-utils

2.2 创建共享目录

接下来,创建一个用于共享的目录。例如,我们创建一个名为/shared的目录:

bash 复制代码
sudo mkdir /shared

为了测试,我们可以在该目录下创建一个文件:

bash 复制代码
sudo touch /shared/testfile.txt

2.3 配置NFS导出目录

编辑NFS的配置文件/etc/exports,指定要共享的目录和允许访问的客户端:

bash 复制代码
sudo vi /etc/exports

在文件中添加以下内容:

bash 复制代码
/shared 192.168.1.101(rw,sync,no_root_squash)

解释:

  • /shared:要共享的目录。
  • 192.168.1.101:允许访问的客户端IP地址。
  • rw:允许读写权限。
  • sync:同步写入,确保数据一致性。
  • no_root_squash:允许客户端以root用户身份访问共享目录。

2.4 启动NFS服务

配置完成后,启动NFS服务并设置开机自启:

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

2.5 检查NFS共享

使用以下命令检查NFS共享是否配置成功:

bash 复制代码
sudo exportfs -v

你应该会看到类似以下的输出:

bash 复制代码
/shared       192.168.1.101(rw,wdelay,no_root_squash,no_subtree_check,sec=sys,rw,no_root_squash,no_all_squash)

3. 在NFS Client上挂载共享目录

3.1 安装NFS客户端工具

在NFS Client上安装NFS客户端工具:

bash 复制代码
sudo yum install -y nfs-utils

3.2 创建挂载点

在客户端上创建一个目录,用于挂载NFS共享目录。例如,我们创建一个名为/mnt/nfs的目录:

bash 复制代码
sudo mkdir -p /mnt/nfs

3.3 挂载NFS共享目录

使用以下命令挂载NFS共享目录:

bash 复制代码
sudo mount -t nfs 192.168.1.100:/shared /mnt/nfs

3.4 验证挂载

使用df -h命令查看挂载情况:

bash 复制代码
df -h

你应该会看到类似以下的输出:

bash 复制代码
192.168.1.100:/shared  50G  1.2G   49G   3% /mnt/nfs

你也可以通过ls命令查看共享目录中的文件:

bash 复制代码
ls /mnt/nfs

你应该能看到之前在NFS Server上创建的testfile.txt文件。

3.5 设置开机自动挂载

为了在系统重启后自动挂载NFS共享目录,编辑/etc/fstab文件:

bash 复制代码
sudo vi /etc/fstab

在文件末尾添加以下内容:

bash 复制代码
192.168.1.100:/shared  /mnt/nfs  nfs  defaults  0  0

保存并退出。这样,每次系统启动时都会自动挂载NFS共享目录。

4. 测试NFS共享

为了确保NFS共享正常工作,你可以在客户端上创建一个文件,然后在服务器上查看:

在客户端上:

bash 复制代码
sudo touch /mnt/nfs/clientfile.txt

在服务器上:

bash 复制代码
ls /shared

你应该能看到clientfile.txt文件。

5. 安全注意事项

  • 防火墙配置:确保NFS Server的防火墙允许NFS相关的端口通过。你可以使用以下命令开放NFS服务:

    bash 复制代码
    sudo firewall-cmd --permanent --add-service=nfs
    sudo firewall-cmd --permanent --add-service=mountd
    sudo firewall-cmd --permanent --add-service=rpc-bind
    sudo firewall-cmd --reload
  • 权限管理 :在/etc/exports中,确保只允许可信的客户端访问共享目录,并根据需要设置适当的权限。

6. 总结

通过以上步骤,你已经成功在CentOS 7上部署了NFS服务,并在客户端上挂载了共享目录。NFS是一个强大的工具,适用于需要在多台机器之间共享文件的场景。

相关推荐
一个网络学徒12 分钟前
MGRE综合实验
运维·服务器·网络
守望时空3317 分钟前
RustDesk搭建指南
linux
C++ 老炮儿的技术栈21 分钟前
在 Scintilla 中为 Squirrel 语言设置语法解析器的方法
linux·运维·c++·git·ubuntu·github·visual studio
白鹭1 小时前
基于LNMP架构的分布式个人博客搭建
linux·运维·服务器·网络·分布式·apache
java叶新东老师1 小时前
linux 部署 flink 1.15.1 并提交作业
linux·运维·flink
程序员JerrySUN2 小时前
Linux系统架构核心全景详解
linux·运维·系统架构
无敌的牛2 小时前
Linux文件理解,基础IO理解
linux·运维·服务器
angushine2 小时前
鲲鹏服务器logstash采集nginx日志
运维·服务器·nginx
未来之窗软件服务2 小时前
跨平台 WebSocket 服务器的设计与实现 —— 基于.NET 8 的跨操作系统解决方案linux,macos,windows——开发工具
linux·服务器·websocket·仙盟创梦ide·东方仙盟
睿思达DBA_WGX3 小时前
由于主库切换归档路径导致的 Oracle DG 无法同步问题的解决过程
运维·数据库·oracle