飞牛 NFS 共享:Linux 和虚拟机更喜欢的协议
NFS 在 Linux、macOS 和虚拟化环境里更顺手,但权限模型和 Windows 不太一样。
如果 SMB 是「Windows 友好」,那 NFS 就是「Linux 友好」。飞牛(fnOS)同样内置了 NFS 服务,适合把 NAS 目录挂给 Linux 服务器、macOS 或者虚拟机使用。
什么时候该用 NFS
- Linux 机器要挂载 NAS 上的目录;
- 虚拟机(PVE/ESXi)想把 NAS 当存储;
- macOS 挂载后做开发目录;
- 容器里挂载共享数据。
这些场景用 NFS 比 SMB 更自然,性能也往往更好。
开启和配置
大致步骤:
- 创建共享文件夹;
- 打开文件共享协议 → 启用 NFS;
- 配置允许访问的客户端 IP 段(比如
192.168.1.0/24); - 在客户端挂载。
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。
留言