刚组装NAS那会儿,我和大多数人一样,只开了SMB。文件能传、电影能播,似乎就够了。
但玩了两个月后,我开始折腾NFS和iSCSI。现在回头看,真该一开始就搭统一环境。
SMB的优势很明显:跨平台支持最好。Windows设备占了我家lab的大头,Mac也能无缝接入,Linux实现也不差。权限配置简单,做实验时随手开个共享,不用动脑。
在混合环境里,SMB确实更实用——这话不夸张。
但NFS和iSCSI有完全不同的场景。NFS在Linux/Unix原生环境里性能更干净,没有SMB的协议开销。iSCSI则把存储块直接抛给客户端,适合跑数据库、虚拟机,或者任何需要"本地硬盘幻觉"的场景。
我的转折点是一次Plex迁移。SMB下4K原盘拖动进度条要卡两秒,换NFS后几乎无感知。后来给Proxmox划iSCSI LUN,虚拟机快照速度直接翻倍。
现在我的ZFS池同时导出三种协议:SMB给Windows和日常文件,NFS给Linux媒体服务,iSCSI给虚拟化负载。同一套物理存储,不同访问姿势。
很多人担心复杂度。确实,权限模型不统一是痛点——SMB走ACL,NFS靠UID/GID映射,iSCSI干脆把权限甩给客户端操作系统。但现代NAS系统(TrueNAS、Unraid、甚至OpenMediaVault)都做了抽象层,配置一次,后台自动处理协议差异。
我的建议是:别等到瓶颈出现再补课。如果你确定NAS会长期服役,且设备类型混杂,三协议并行不是过度工程,而是提前还债。ZFS的快照和压缩对三种协议透明,这块红利不吃白不吃。
当然,也有代价。排查故障时要定位是协议层、网络层还是存储层问题,排查链变长了。但相比性能惊喜,这点认知负担可以接受。
最后说个反直觉的:iSCSI并非企业专属。家用场景里,给笔记本挂个iSCSI盘做Time Machine目标,比SMB共享更稳定——macOS把它当本地磁盘对待,不会莫名其妙断开连接。
协议选择从来不是非此即彼。SMB的便利性、NFS的原生感、iSCSI的块设备特性,可以共存。关键是你得知道各自的水位线在哪,然后把流量导向合适的管道。
热门跟贴