POST

飞牛 NFS 共享:Linux 和虚拟机更喜欢的协议

NFS 在 Linux、macOS 和虚拟化环境里更顺手,但权限模型和 Windows 不太一样。

如果 SMB 是「Windows 友好」,那 NFS 就是「Linux 友好」。飞牛(fnOS)同样内置了 NFS 服务,适合把 NAS 目录挂给 Linux 服务器、macOS 或者虚拟机使用。

什么时候该用 NFS

  • Linux 机器要挂载 NAS 上的目录;
  • 虚拟机(PVE/ESXi)想把 NAS 当存储;
  • macOS 挂载后做开发目录;
  • 容器里挂载共享数据。

这些场景用 NFS 比 SMB 更自然,性能也往往更好。

开启和配置

大致步骤:

  1. 创建共享文件夹;
  2. 打开文件共享协议 → 启用 NFS;
  3. 配置允许访问的客户端 IP 段(比如 192.168.1.0/24);
  4. 在客户端挂载。

Linux 挂载示例:

sudo mount -t nfs 192.168.1.100:/volume1/media /mnt/media

macOS 可以用 Finder 的「连接服务器」,地址填 nfs://192.168.1.100/volume1/media。

权限模型不一样

这是 NFS 最容易被坑的地方。

SMB 是「账号密码」认证,NFS 传统上是「按客户端 IP + UID/GID」授权。也就是说:

  • 服务端信任你来自某个 IP;
  • 文件权限按 Linux 的 UID/GID 判断;
  • 客户端和服务端的用户 ID 对不上,就会出现「能挂载但读写不了」。

解决办法通常是让两边的 UID/GID 一致,或者在飞牛侧用 root squash 等选项放宽权限(不建议在生产环境乱开)。

NFSv3 和 NFSv4

  • NFSv3:老但兼容性好,端口多,防火墙要放行好几个端口;
  • NFSv4:单端口(2049),支持更细的权限和 ACL,现代系统首选。

飞牛一般两种都支持,客户端会自动协商。跨公网访问 NFS 不建议,性能和安全性都不好。

和 SMB 怎么选

场景选什么
Windows 电脑日常访问SMB
Linux 服务器 / 开发机NFS
虚拟机存储NFS 或 iSCSI
手机、电视SMB / DLNA
跨平台网盘式访问WebDAV

常见的坑

能挂载但写不进去:UID/GID 不匹配,或者共享目录权限是只读。

挂载超时:检查防火墙是否放行 2049(v4)或相关端口(v3),以及客户端 IP 是否在白名单。

Windows 用不了:Windows 默认不支持 NFS,需要装「NFS 客户端」功能,而且体验一般,不如直接用 SMB。

断网后卡住:NFS 挂载对网络中断比较敏感,建议挂载时加 soft、timeo 等参数,避免进程一直卡着。

小结

NFS 是「专业用户」的协议:配置比 SMB 麻烦,权限模型也更底层,但在 Linux 和虚拟化场景里确实更顺手。

家庭用户如果只有 Windows 和手机,SMB 就够了;有 Linux 服务器或虚拟机,再考虑开 NFS。

👁 - 次浏览

留言

← 返回首页