Ubuntu NFS 搭建及配置

在 Ubuntu 上搭建和配置 NFS(Network File System)服务器,可以让其他设备通过网络访问共享的文件夹。以下是步骤指南:

1. 安装 NFS 服务器

首先,安装 NFS 服务器软件包:

bash 复制代码
sudo apt update
sudo apt install nfs-kernel-server

2. 创建共享目录

创建一个目录作为共享文件夹,例如 /srv/nfs

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

设置目录权限(根据需求可以进行更改):

bash 复制代码
sudo chown nobody:nogroup /srv/nfs
sudo chmod 777 /srv/nfs

3. 配置 NFS 导出目录

编辑 NFS 导出的配置文件 /etc/exports,添加共享目录和权限配置。例如,允许局域网内 IP 地址范围为 192.168.1.0/24 的客户端访问 /srv/nfs 目录:

bash 复制代码
sudo nano /etc/exports

在文件中添加如下内容:

/srv/nfs 192.168.1.0/24(rw,sync,no_subtree_check)

参数解释:

  • rw:读写权限
  • sync:同步写入数据(更安全)
  • no_subtree_check:防止子目录检查,提升性能

保存文件并退出编辑器。

4. 应用配置并启动 NFS 服务

执行以下命令使配置生效,并启动 NFS 服务:

bash 复制代码
sudo exportfs -a
sudo systemctl restart nfs-kernel-server

5. 配置防火墙(可选)

如果使用了防火墙,确保允许 NFS 服务的相关端口:

bash 复制代码
sudo ufw allow from 192.168.1.0/24 to any port nfs

6. 客户端挂载 NFS 共享

在客户端机器上,安装 NFS 客户端:

bash 复制代码
sudo apt install nfs-common

然后,创建一个挂载点并挂载 NFS 共享。例如挂载到 /mnt/nfs_share 目录:

bash 复制代码
sudo mkdir -p /mnt/nfs_share
sudo mount 192.168.1.100:/srv/nfs /mnt/nfs_share

(其中 192.168.1.100 是 NFS 服务器的 IP 地址)

7. 自动挂载(可选)

如果希望在系统启动时自动挂载 NFS 共享,可以将其添加到 /etc/fstab 文件中:

bash 复制代码
sudo nano /etc/fstab

在文件末尾添加一行:

192.168.1.100:/srv/nfs /mnt/nfs_share nfs defaults 0 0

8. 验证共享

在客户端上,可以通过 df -h 命令验证 NFS 共享是否成功挂载:

bash 复制代码
df -h

9. 常见问题排查

  • 无法访问共享目录:检查防火墙配置,确保 NFS 所需的端口是开放的。
  • 挂载失败 :检查服务器上的 /etc/exports 文件是否正确配置,并确认 NFS 服务是否运行正常。

这样你就成功地在 Ubuntu 上搭建了 NFS 服务,并且客户端也可以访问共享的文件夹了。

相关推荐
vip45121 分钟前
Linux 经典面试八股文
linux
大霞上仙23 分钟前
Ubuntu系统电脑没有WiFi适配器
linux·运维·电脑
weixin_4426434242 分钟前
推荐FileLink数据跨网摆渡系统 — 安全、高效的数据传输解决方案
服务器·网络·安全·filelink数据摆渡系统
Karoku0661 小时前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
半桶水专家1 小时前
用go实现创建WebSocket服务器
服务器·websocket·golang
布值倒区什么name1 小时前
bug日常记录responded with a status of 413 (Request Entity Too Large)
运维·服务器·bug
孤客网络科技工作室2 小时前
VMware 虚拟机使用教程及 Kali Linux 安装指南
linux·虚拟机·kali linux
。puppy2 小时前
HCIP--3实验- 链路聚合,VLAN间通讯,Super VLAN,MSTP,VRRPip配置,OSPF(静态路由,环回,缺省,空接口),NAT
运维·服务器
颇有几分姿色2 小时前
深入理解 Linux 内存管理:free 命令详解
linux·运维·服务器
AndyFrank3 小时前
mac crontab 不能使用问题简记
linux·运维·macos