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 服务,并且客户端也可以访问共享的文件夹了。

相关推荐
啦啦啦啦啦zzzz13 分钟前
Appender抽象类的实现c++20
linux·服务器·c++·c++20
小此方13 分钟前
Linux网络(七):从 Socket 封装到应用层协议:手写网络版计算器,彻底搞懂 TCP 通信、序列化与反序列化
linux·网络·tcp/ip
captain37618 分钟前
网络初 识
运维·服务器·网络
kyle~26 分钟前
Linux --- epoll (I/O就绪事件通知机制)
linux·运维·服务器
AlfredZhao30 分钟前
进程都杀了,为什么 `netstat` 还能看到端口?
linux
一条泥憨鱼35 分钟前
【从0开始学习计算机网络】| 邮件协议入门:SMTP、POP3、IMAP
linux·运维·计算机网络·github
z落落3 小时前
C# WinForm Socket 转串口设备服务器+Modbus CRC16校验+Socket 客户端
服务器·开发语言·c#
Johny_Zhao11 小时前
网络安全等级保护测评实施方案
linux·网络·人工智能·网络安全·信息安全·云计算·等保测评·系统运维·itsm
落羽的落羽12 小时前
【AI】快速理解AI应用的相关名词概念
linux·c++·人工智能·python·计算机网络·算法
刚入门的大一新生12 小时前
Linux-进程控制
linux·运维·服务器·c++