当前位置: 首页 > news >正文

NFS CENTOS系统 安装配置

在 CentOS 上搭建 NFS(Network File System)服务器和客户端的完整步骤如下:

‌一、NFS 服务器端配置(以 CentOS 7/8 为例)‌
1. 安装 NFS 服务
# 安装 NFS 服务包
sudo yum install -y nfs-utils rpcbind

# 启动服务并设置开机自启
sudo systemctl enable --now rpcbind
sudo systemctl enable --now nfs-server

2. 创建共享目录
sudo mkdir -p /nfs/share
sudo chmod 777 /nfs/share  # 根据需要设置权限

3. 配置共享目录权限
编辑配置文件 /etc/exports:

sudo vim /etc/exports
添加内容(按需选择配置):

# 示例1:允许整个网段访问(读写)
/nfs/share 192.168.1.0/24(rw,sync,no_root_squash,no_subtree_check)

# 示例2:允许特定IP访问(只读)
/nfs/share 192.168.1.100(ro,sync)

# 示例3:允许所有客户端访问(生产环境慎用)
/nfs/share *(rw,sync)
‌参数说明‌:

rw:读写权限
ro:只读权限
sync:同步写入磁盘
no_root_squash:允许 root 用户保留权限
subtree_check:子目录检查(建议关闭)

4. 生效配置
sudo exportfs -arv  # 重新加载配置

5. 防火墙放行

# 开放 NFS 相关服务
sudo firewall-cmd --permanent --add-service={nfs,rpc-bind,mountd}
sudo firewall-cmd --reload

6. 验证共享列表
showmount -e localhost
输出示例:
Export list for localhost:
/nfs/share 192.168.1.0/24

‌二、NFS 客户端配置‌
1. 安装客户端工具
sudo yum install -y nfs-utils

2. 创建本地挂载点
sudo mkdir -p /mnt/nfs_client

3. 查看服务器共享目录
showmount -e 192.168.1.10  # 替换为 NFS 服务器 IP

4. 手动挂载 NFS
sudo mount -t nfs 192.168.1.10:/nfs/share /mnt/nfs_client

5. 验证挂载
df -hT | grep nfs
输出示例:

bash
Copy Code
192.168.1.10:/nfs/share nfs4  50G  5.2G   45G  11% /mnt/nfs_client

6. 开机自动挂载
编辑 /etc/fstab:

sudo vim /etc/fstab
添加一行:

192.168.1.10:/nfs/share  /mnt/nfs_client  nfs  defaults  0 0
测试配置:
sudo mount -a  # 无报错即生效

‌三、常见问题排查‌
1. 客户端挂载失败
‌检查服务状态‌:
# 服务器端
systemctl status nfs-server
rpcinfo -p 192.168.1.10  # 查看 RPC 服务

‌关闭 SELinux(临时)‌:
sudo setenforce 0  # 服务器和客户端都执行
‌永久关闭 SELinux‌(编辑 /etc/selinux/config 设置 SELINUX=disabled)

2. 权限被拒绝
确保服务器端 /etc/exports 配置了客户端的 IP 或网段
检查共享目录的本地文件系统权限(chmod/chown)

3. 性能优化建议
在 /etc/exports 中添加 async 参数提升写入速度(数据丢失风险增加)
客户端挂载时使用 noatime 减少元数据更新:

# /etc/fstab 示例
192.168.1.10:/nfs/share /mnt/nfs_client nfs rw,noatime 0 0

‌四、安全增强建议‌
‌限制访问范围‌:
在 /etc/exports 中指定最小授权 IP 范围(如 192.168.1.0/24)
‌使用 Kerberos 认证‌(高级):
/nfs/share *.example.com(rw,sec=krb5p)
‌NFSv4 专属端口‌:
# 服务器端 /etc/sysconfig/nfs
RQUOTAD_PORT=875
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
STATD_PORT=662
STATD_OUTGOING_PORT=2020
提示:生产环境建议使用 NFSv4(更安全),并通过防火墙限制访问。

http://www.dtcms.com/a/315400.html

相关文章:

  • RAGFlow 0.20.0 : Multi-Agent Deep Research
  • Java Date类介绍
  • 计算机网络:(十三)传输层(中)用户数据报协议 UDP 与 传输控制协议 TCP 概述
  • Python 基础语法(二):流程控制语句详解
  • FPGA实现Aurora 8B10B视频点对点传输,基于GTP高速收发器,提供4套工程源码和技术支持
  • [按键精灵]
  • 【C++详解】⼆叉搜索树原理剖析与模拟实现、key和key/value,内含优雅的赋值运算符重载写法
  • 豆包新模型与 PromptPilot 实操体验测评,AI 辅助创作的新范式探索
  • Python装饰器函数《最详细》
  • 06 基于sklearn的机械学习-欠拟合、过拟合、正则化、逻辑回归、k-means算法
  • 深度残差网络ResNet结构
  • 补:《每日AI-人工智能-编程日报》--2025年7月30日
  • 第二十四天(数据结构:栈和队列)队列实践请看下一篇
  • 数据集相关类代码回顾理解 | np.mean\transforms.Normalize\transforms.Compose\xxx.transform
  • MySQL中COUNT(\*)、COUNT(1)和COUNT(column),到底用哪个?
  • 8.4 Codeforces练习
  • 库克宣布苹果ALL-IN AI战略:效仿iPhone模式实现弯道超车 | AI早报
  • 机器学习——基本算法
  • LangChain4j + Milvus 从0-1实现会话管理与RAG检索的AIChat超详细教程
  • 数据结构——队列(Queue)
  • Linux学习—数据结构(链表2)
  • 红队信息收集工具oneforall子域名搜集爆破工具安装使用教程详细过程
  • 句子表征-文本匹配--representation-based/interactive-based
  • 【华为机试】685. 冗余连接 II
  • 补:《每日AI-人工智能-编程日报》--2025年7月28日
  • 【深度学习新浪潮】近三年零样本图像分类研发进展调研
  • mongodb 和 mysql 相关操作
  • 【C++】语法基础篇
  • 厄米系统(Hermitian System)
  • 【大模型05】Embedding和向量数据库