avatar

瓜生花子八宝粥

少壮不努力 老了看浏览器

  • 首页
  • 开源项目
  • Linux
  • Windows
  • Docker
  • 中间件
  • 数据库
主页 Linux NFS服务
文章

Linux NFS服务

发表于 2024-12-2 更新于 2024-12- 3
作者 jepwei
9~12 分钟 阅读

NFS服务配置指南

参考资料

技术博客

NFS服务器配置

1. 安装NFS服务

首先,安装必要的NFS组件:

yum -y install rpcbind nfs-utils

2. 创建共享目录

创建一个用于共享的目录,并设置相应权限:

mkdir /data/share/
chmod 755 -R /data/share/

3. 配置NFS

NFS的配置文件位于 /etc/exports。在该文件中添加以下配置行:

/data/share/ *(rw,no_root_squash,no_all_squash,sync,no_subtree_check)

参数说明:

  • *:表示允许任何IP访问,可以替换为特定的IP或网段。
  • rw:设置目录可读写。
  • sync:数据会同步写入内存和硬盘。
  • no_root_squash:允许NFS客户端的root用户在服务端拥有root权限。
  • no_all_squash:不将所有用户映射为匿名用户。

如果有多个共享目录配置,请逐行添加。配置完成后,执行以下命令使更改生效:

exportfs -r

4. 设置防火墙

如果系统未开启防火墙,此步骤可省略。NFS的防火墙配置较为复杂,除了固定的端口111和2049外,还有其他服务(如rpc.mountd)使用不固定端口。为简化防火墙配置,可以在 /etc/sysconfig/nfs 文件中取消以下行的注释(如不存在则添加):

RQUOTAD_PORT=1001
LOCKD_TCPPORT=30001
LOCKD_UDPPORT=30002
MOUNTD_PORT=1002

保存后,执行以下命令将端口添加到防火墙允许策略中:

firewall-cmd --zone=public --add-port=111/tcp --add-port=111/udp --add-port=2049/tcp --add-port=2049/udp --add-port=1001/tcp --add-port=1001/udp --add-port=1002/tcp --add-port=1002/udp --add-port=30001/tcp --add-port=30002/udp --permanent
firewall-cmd --reload

5. 启动服务

按顺序启动 rpcbind 和 nfs 服务:

systemctl start rpcbind
systemctl start nfs

设置服务开机自启:

systemctl enable rpcbind
systemctl enable nfs

可以使用以下命令查看NFS服务的端口是否生效:

rpcinfo -p

确认服务端配置正常,可以使用以下命令查看共享目录:

showmount -e localhost

如果输出如下,表示配置正常:

Export list for localhost
/data/share nfs server服务地址

客户端配置(挂载NFS)

1. 安装rpcbind服务

客户端只需安装 rpcbind 服务,无需安装或启动NFS服务:

yum -y install rpcbind

2. 挂载远程NFS文件系统

首先,查看服务端已共享的目录:

showmount -e 192.168.2.202  # 替换为NFS服务器的IP地址

创建挂载目录并执行挂载命令:

mkdir -p /mnt/share
mount -t nfs 192.168.2.202:/data/share /mnt/share/ -o nolock,nfsvers=3

注意:如果不加 -o nolock,nfsvers=3,挂载目录下的文件属主和组可能会显示为 nobody,指定 nfsvers=3 可以确保显示为 root。

要解除挂载,可以执行:

umount /mnt/share

3. 开机自动挂载

为了在重启后自动挂载NFS,在 /etc/rc.d/rc.local 文件中添加挂载命令:

# vim /etc/rc.d/rc.local
# 在文件最后添加:
mount -t nfs 192.168.2.202:/data/share /mnt/share/ -o nolock,nfsvers=3

保存并重启机器以验证配置。

测试验证

在客户端输入以下命令查看挂载结果:

df -h

如果能看到挂载的NFS目录,说明挂载成功。接下来,可以在客户端的 /mnt/share 目录中进行文件的创建和删除操作,并在服务端的 /data/share 目录中查看变更情况。

总结

NFS服务配置相对简单,但在防火墙和权限设置上需要特别注意。确保按照步骤进行配置,并在实际操作中进行充分测试,以确保系统的稳定性和安全性。

可能的缺点与注意事项

  1. 安全性:使用 no_root_squash 和 no_all_squash 可能带来安全隐患,建议根据实际需求谨慎使用。
  2. 性能:NFS的性能受网络延迟和带宽影响,适合局域网环境。
  3. 故障恢复:NFS依赖网络,网络故障可能导致文件访问中断,建议定期备份重要数据。

希望以上内容能帮助到您更好地配置和管理NFS服务!

Linux
Linux
许可协议: 
分享

相关文章

7月 16, 2025

ubuntu 设置时间显示为24小时制

对ubuntu默认的时间显示格式不太满意,查阅了相关资料进行修改为24小时制度,特此记录和分享给需要设置的网友 查看当前的timezone root@jumpserver:~# timedatectl Local time: Sat 2024-03-23 12:45:5

6月 10, 2025

KVM 虚拟机创建模板

查看--os-type支持的参数 osinfo-query os # 列出所有已知操作系统 win7 virt-install --name=win7_zpcl_ip --vcpu=8,sockets=1,cores=8,threads=1 --ram=16384 --disk path=/home

1月 15, 2025

cpu 内存占用脚本

本文介绍了两个版本的Linux压力测试脚本,分别用于CPU和内存的压力测试。CPU压力测试脚本通过无限循环创建指定数量的进程以占用CPU资源;内存压力测试脚本则通过创建临时内存块来模拟内存占用,支持指定大小和停止运行。用户需根据用法说明参数执行脚本。该文档适合需要进行性能测试的Linux用户。

下一篇

Linux jdk环境安装

上一篇

Linux 磁盘扩容

最近更新

  • 1panel 部署
  • jumpserver 堡垒机部署
  • ubuntu 设置时间显示为24小时制
  • pritunl vpn 部署
  • dockovpn 部署

热门标签

nacos openvpnas 资源分享 docker oracle mysql ubuntu 开源项目 虚拟化 Linux

目录

©2025 瓜生花子八宝粥. 保留部分权利。

使用 Halo 主题 Chirpy