Linux7 挂载 nfs 远程目录

📚 前言

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。

在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,像访问本地文件一样。

☀️ 介绍

Linux 系统下,如果想要将 A 机器的目录挂载到 B 机器,让 B 机器访问,可以通过 NFS 将目录挂载到 B 机器!

本文介绍下如何配置 NFS 远程目录:

  • 机器A: 服务端,IP:10.211.55.100,假设有有一个目录 /backup
  • 机器B: 客户端,IP:10.211.55.101,需要访问 A 服务器的 /backup 目录
  • 机器 A,B 尽量配置在同一个网段下,假设为:10.211.55.*

❤️ NFS 配置

服务端配置

1、开启服务

服务端需要开启 rpcbindnfs 服务:

bash 复制代码
systemctl enable rpcbind.service
systemctl start rpcbind.service
systemctl status rpcbind.service

systemctl enable nfs.service
systemctl start nfs.service
systemctl status nfs.service

确认服务都已成功开启,并且配置开机自启。

2、关闭防火墙和selinux

bash 复制代码
systemctl disable firewalld
systemctl stop firewalld
systemctl status firewalld

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0

3、配置 exports

默认是一个空文件,只需要按照如下格式配置即可,一行一个共享卷。

bash 复制代码
cat <<EOF>>/etc/exports
/backup 10.211.55.*(rw,sync)
EOF

## 生效exports
exportfs -rv

文件中可以设置参数:

  • rw:具有读写权限
  • sync:资料同步写入磁盘和内存
  • o:只读权限
  • no_root_squash:登入nfs主机时,拥有共享目录所有者权限
  • root_squash:登入nfs主机时,拥有共享目录所有者权限,但如果共享目录的拥有者时root用户,那么登入者权限为nobody权限
  • all_squash:登入nfs主机时,拥有nobody用户权限
  • anonuid:指定用户id
  • anongid:指定群id
  • async:资料先存内存,再存硬盘
  • no_subtree_check:不检查父文件夹权限
  • subtree:检查父文件权限
  • secure:限制client port(<1024)

至此,服务端就已经配置好了!

客户端配置

客户端配置比较简单!

1、创建挂载目录

bash 复制代码
mkdir /backup

可以与服务端挂载目录不同名。

2、查看是否可以访问服务端NFS

bash 复制代码
showmount -e 10.211.55.100

如果显示如下即为正确:

bash 复制代码
导出列表在 10.211.55.100:
/backup                            10.211.55.*

3、mount 挂载远程目录

bash 复制代码
mount -t nfs -o rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,tcp  10.211.55.100:/backup /backup

4、配置开机自动挂载

bash 复制代码
cat <<EOF>>/etc/rc.local
mount -t nfs -o rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,tcp  10.211.55.100:/backup /backup
EOF

## Linux7需要手动授权执行权限,否则无权限
chmod +x /etc/rc.d/rc.local

看到这里有朋友会问了,为什么不配置在 /etc/fstab 文件中?

我悄悄告诉你:等你开机开不了的时候,就不会配置在 /etc/fstab 里面了罒ω罒!

OK,至此已经配置完成,通过 df -h 就可以查看已挂载的 NFS 目录啦!

小BUG

最后再分享一个很坑的小bug吧,需要注意 📢:

‼️ 不要在服务端 /etc/hosts 文件中配置客户端的主机解析名!

至于为什么? 你可以自己去测试一下呀!毕竟实践出真知嘛~😄


本次分享到此结束啦~

如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力。

❤️ 技术交流可以 关注公众号:Lucifer三思而后行 ❤️


📚 推荐阅读:DBA 学习之路

如果这篇文章对你有帮助,推荐访问我的 Oracle DBA 系统学习站点,涵盖 100 天完整学习路线:

  • 🔧 Oracle 安装部署 · RMAN 备份恢复 · Data Pump 数据迁移
  • 🏗️ RAC 高可用 · DataGuard 容灾 · 多租户架构
  • 🔍 故障排查 · 升级迁移 · GoldenGate 数据同步

👉 立即访问 ora100.com →

相关推荐
IT_陈寒1 小时前
用了Proxy才发现以前的JavaScript白写了
前端·人工智能·后端
唐青枫2 小时前
别把 ArrayList 当成会自动管理内存的 List:Zig 动态数组从入门到实战
后端
鸿蒙开发2 小时前
我为 HarmonyOS 做了一个统一大模型 SDK:@hmkit/ai 正式开源
后端
猪是念来过倒2 小时前
Semaphore 与 RateLimiter:并发控制双雄详解
后端
掘金者阿豪2 小时前
异构数据同步最怕什么?不是同步慢,而是数据对不上
后端
程序员cxuan3 小时前
Claude 官方的学习教程,太强了。
人工智能·后端·程序员
老孙讲技术3 小时前
把工地遮挡和掉线接进项目部:setMessageCallback 订 alarm 与 deviceStatus
后端·物联网·音视频开发
老孙讲技术3 小时前
关店后有人进门,监控值班群却没响:用 setMessageCallback 订 human,再用 aiHuman 打开人形
后端·物联网·音视频开发
LEE3 小时前
原来 Claude Code 最厉害的工具,一行代码都不写
前端·后端
老孙讲技术3 小时前
把园区几百路摄像头收进值班台账:bindDevice 入账与 listDeviceDetailsByPage 翻页
后端·物联网·音视频开发