5年NAS折腾史:从DSM毕业后,我选择了fnOS

Part.00 生命不息,折腾不止

不知不觉,距离我第一次掉进NAS这个深坑,已经过去快5年了。回想2021年,那时大家还在疯抢蜗牛星际,满世界找靠谱的矿渣(挖矿之后废弃的小主机)。我也跟风入场,从一开始的小心翼翼,到后来熟练地重装系统、倒腾Docker,家里的旧电脑甚至树莓派,都被我拿来改造过。对于每一个NAS玩家来说,折腾本身就是一种乐趣,看着一个个服务绿灯亮起,看着海报墙自动刮削成功,那种多巴胺分泌的快乐,不懂的人是真不懂,懂的人是真上头。

但随着时间推移,我的心态变了。以前为了省钱折腾黑群晖,为了一个驱动能熬两个通宵;现在年纪大了,觉得稳定和省心才是硬道理。当然如果是为了对接上AI,那折腾一下也还是可以的。看着家里那台配置不错的机器,跑着内核古老的DSM,显卡硬解还得打补丁,系统更新像开盲盒,新功能也没办法体验……我累了。于是,我决定提桶跑路了。

这一次,我把目光投向了最近风很大的国产新秀:fnOS。从DSM迁移到fnOS,体验到底是降级还是起飞?

Part.01 我和DSM的那些年

1.初入DSM

在NAS的江湖里,群晖的DSM绝对是教科书和祖师爷级别的存在。对于我们这批21年左右入坑的玩家来说,DSM几乎是每个人的必修课。无法否认,他的系统完成度之高,生态之完善,一度让我觉得这就是NAS系统的终极形态。它教会了我怎么搭建私有云,怎么玩转Docker,怎么在局域网里把千兆带宽跑满。但这个教科书虽然经典,却不一定能适应日新月异的硬件。随着折腾的深入,我愈发觉得DSM系统的封闭和古老带来的问题,影响到了使用的体验。

最终劝退我的,主要有三个“硬伤”:

  1. 白群晖贵得肉疼。圈里有句名言:“白群晖是买软件送硬件”。对于学生党或者追求极致性价比的玩家来说,动辄几千块买个双核赛扬,确实捉襟见肘。而我选择黑群晖(破解版系统),虽然省下了硬件钱,但每天过得像是在走钢丝。“引导能不能认出网卡?”“小版本更新会不会炸?”“洗白码还能不能用?”这种把时间浪费在维护系统本身,而不是享受服务上的感觉,越来越违背我玩NAS的初衷。
  2. DSM古老的系统内核。DSM的Linux内核版本……怎么说呢,属于化石级的。这导致了一个极其尴尬的局面:我的硬件性能是过剩,但系统却发挥不出来。想用核显硬解4K HEVC?内核太老驱动不支持,需要自己敲代码打补丁;想跑满NVMe缓存?要去GitHub找脚本。
  3. 移动端的割裂感。DSM在WEB端确实强,但到了移动端,策略就显得有点碎了。看照片是Photos,看视频是Video,同步文件是Drive,管理文件是File……手机桌面上得专门开个文件夹放群晖的全家桶。在如今这个APP追求All-in-One的年代,这种需要在四五个APP之间反复横跳的操作逻辑,确实有点考验耐心。
    image.png

难道就没有一个既能白嫖、又足够现代化、还能把我的新硬件性能榨干的系统吗?带着这个疑问,我开始了对家里整个NAS系统功能的梳理和重构。

2.DSM廉颇老矣

在决定提桶跑路换系统之前,我其实构筑了一套自认为非常完美的All-in-One(AIO)堡垒。那时的底层架构是ESXi,在这位企业级虚拟化系统的统领下,我的NAS就像一个精密的赛博大楼:

  • 虚拟机1:黑群晖。为了数据安全,我直接把SATA控制器做了直通,硬盘管理全权交给它。
  • 虚拟机2:Ubuntu Server。这里跑着我所有的自建服务,各种Docker容器在这里安家。
  • 虚拟机3:Ubuntu Dev。这是我远程开发的专用环境,环境隔离,瞎折腾也不怕炸。
  • 虚拟机4:Windows。作为备用机,偶尔处理一些只有Windows能干的活。

听起来是不是很完美?逻辑清晰,分工明确。直到……我换了新电脑。主力机升级后,手里淘汰下来一张RTX3070显卡。作为一名合格的垃圾佬兼AI爱好者,第一反应当然是把它塞进NAS里发光发热,跑跑本地大模型或者硬解转码,岂不美滋滋?然而,现实狠狠给了我一巴掌。

第一条路:vGPU(虚拟化显卡切分)——死路一条。在ESXi上,消费级显卡想做vGPU本来就是“逆天而行”。以前的老卡还能靠大神做的vGPU Unlock或者魔改驱动续命,但到了30系,目前根本没有可用的破解驱动方案。至于正规授权?那价格……对不起,打扰了,群晖我都买不起更何况这个。

第二条路:Passthrough(硬件直通)——还是死路一条。既然vGPU没戏,那我把显卡完整直通给虚拟机总行了吧?也不行!NVIDIA的驱动检测机制在30系上变得异常严格。以前10系、20系显卡时,我们在ESXi配置文件里加一行hypervisor.cpuid.v0=FALSE来隐藏虚拟机特征,就能骗过驱动正常启动。但这个“祖传魔法”在30系显卡上彻底失效了。无论怎么修改配置,驱动程序都能敏锐地嗅出自己身处虚拟机环境,然后反手给你一个拒绝启动(Code 43)。哼哧哼哧和大模型聊了几个月,也没有找到合适的解决办法。

这种感觉太绝望了:看着插槽上算力还不错的显卡,在ESXi里却成了一块只能发热的板砖。我不想再为了一个驱动去跟厂商斗智斗勇,也不想为了用上显卡去研究什么底层内核级魔改。也就是那一刻,我悟了:在消费级硬件+家庭应用场景下,ESXi这种重型虚拟化方案,限制实在太多了。

我需要一个更原生、更自由的系统。它要是Linux底层,显卡驱动能原生直装,Docker容器可以直接调用宿主机的GPU资源,没有任何虚拟化损耗,更不需要去隐藏什么虚拟机特征。于是,fnOS带着它基于Debian的底层优势(以及对核显/独显的原生友好支持),成为了我的救命稻草。

Part.02 fnOS上手初体验

既然ESXi这条路走不通,我索性心一横:不装了,摊牌了,直接物理机安装吧!于是,我抹掉了盘里的ESXi,给这台机器装上了fnOS。

1. 原生系统

这种感觉怎么形容呢?就像是脱掉了厚重的枷锁,终于可以大口呼吸新鲜空气了。以前在ESXi里,为了把硬盘给群晖,还要敲命令做RDM直通,生怕硬盘休眠出问题。现在?硬盘插上去系统直接认,ZFS+RAIDZ2,想怎么挂就怎么挂,读写性能完全没有虚拟化损耗。

同时,之前一直无法搞定的3070显卡也可以满血复活。这是最让我泪流满面的时刻。系统装好,在fnOS的应用商店里点一下Nvidia驱动(也可以终端跑个脚本。输入nvidia-smi没有报错!没有Code 43!那张傲娇的RTX3070显卡温顺地显示出了型号和显存。Docker容器启动时,直接加个--gpus all参数,视频转码、本地部署大模型,瞬间就能调用满血算力。

2. 网络架构

当然,作为一个处女座,直接把NAS的系统端口暴露在公网,我是绝对不能接受的。fnOS虽好,但我更习惯自己掌控流量入口。利用fnOS自带的虚拟机功能(KVM底层),我构建了一套独特的“单臂路由+内部万兆”网络架构。

  • 第一步:Ubuntu作为唯一的入口。我在fnOS里开了一个Ubuntu Server虚拟机。它是我整个NAS的入口(兼职保安)。路由器上的公网端口只转发给这个Ubuntu虚拟机。这意味着,外部流量想要访问我的NAS,必须先过Ubuntu这一关。
  • 第二步:Nginx反代分发。在Ubuntu内部,我部署了Nginx。所有的域名请求在这里进行SSL卸载和反向代理。

    • 访问fn.xxx.com -> 转发给fnOS管理页
    • 访问fnv.xxx.com -> 转发给飞牛影视。
    • 这样不仅安全,还能统一管理证书(申请SSL通配符证书,开一个定时任务就再也不用管了),也不用在每个Docker容器里折腾HTTPS。
  • 第三步:OVS万兆虫洞。你可能会问:经过虚拟机转发流量给宿主机,网速会不会有瓶颈?当然不会,fnOS底层网络支持OVS。Ubuntu虚拟机和fnOS宿主机之间,通过OVS建立了一条虚拟的万兆链接(10GbE)。这意味着,虽然流量绕了一圈,但数据是在内存里直接交换的,根本不走物理网线!内网穿透速度极快,看4K蓝光原盘都毫无波澜。

现在的架构变成了: 🌍 公网 ⏩ 路由器 ⏩ Ubuntu (Nginx) ⏩ (OVS万兆虚拟链路) ⏩ fnOS及Docker服务。既享受了物理机直装的硬件便利,又拥有了网络隔离安全感。 这一波,我给我自己 100 分。💯

Part.03 自建服务

系统搭好了,接下来就是软件进场的时候了。fnOS作为一个新系统,我的评价是:核心功能惊艳,但细节打磨还需要时间。不过没关系,作为一个Docker玩家,系统自带的不行,咱们就自己造!这是我目前的自建阵容,基本涵盖了影音、办公、AI和智能家居的方方面面。

1. 飞牛影视(我的最爱)

如果说有什么理由让我死心塌地用fnOS,那绝对是自带的“飞牛影视”。以前在群晖上,Video Station刮削是个老大难,Plex/Emby要收费而且转码需要装驱动,也很麻烦。

飞牛影视是真的懂国人的:

  • 海报墙:指定文件夹,自动刮削,准确率极高。看着那一面整整齐齐的电影墙,强迫症瞬间治愈。

  • 兼容性:只要是能下载下来的格式,基本都能播。
  • 硬解能力:配合我CPU的核显UHD630或者RTX3070,4K HDR原盘拖动进度条丝般顺滑。以前还要担心转码占用CPU,现在GPU也就是微微一热。

结论:在看视频这件事上,fnOS算得上是开箱即用即巅峰。

2. 需要Docker弥补的短板

当然,咱也不能无脑吹(毕竟fnOS也没有给我广告费)。fnOS目前的文件同步和相册功能,距离群晖成熟的Drive和Photos还有不小的差距。这时候,Docker的含金量就体现出来了,我可以按照自己的喜好去选择不同的开源替代,等fnOS的做好之后再切回来。

  • 针对同步盘:我使用Seafile替代飞牛同步。fnOS自带的同步功能目前还比较简陋,出现了好几次丢文件和文件冲突的情况,网络不太好的时候出错重试的逻辑也有点问题。习惯了Synology Drive那种多版本回溯和丝滑的按需同步,我选择了更老牌、更企业级的Seafile。

    他的优点确实不少:

    • 稳:作为很多高校和企业的私有云方案,Seafile的稳定性没得说。
    • 快:独有的切片同步技术,大文件的小修改不需要全文件同步,在任何地方修改都能快速同步。
    • 私密:数据块存储,安全感拉满。
  • 针对相册:MT-Photos替代fnOS相册。fnOS的相册目前最大的槽点是不支持文件夹视图(所有照片混在一起简直是灾难)和缺乏共享相册(NAS的使用场景多是家庭,有个人相册和共享相册能够更好得区分不同的照片)。所以我部署了MT-Photos。

    • 这玩意儿简直是为我的3070显卡量身定制的,在Docker里把显卡映射进去,AI识别(人脸、场景、物体)速度飞快。
      image.png
    • 支持时间轴、地图模式,最重要的是支持文件夹层级结构,逻辑清晰,这才像个管理照片的样子。

3. 我的Docker服务

除了修补系统的不足,我还部署了一系列的服务。

MoviePilot-自动化追剧

  • 定位:懒人福音,真正的“影音管家”。
  • 体验:以前下电影要分四步:去PT站搜种子 -> 丢进下载器 -> 下载完了手动改名刮削 -> 甚至还要手动移动目录。现在有了MoviePilot,这套流程变成了“无感”。它打通了下载器(Qbtorrent)、媒体服务器(飞牛影视)和消息通知(微信)。我只需要在微信里给机器人发一句“想看《深海》”,剩下的全自动完成:自动搜索最佳资源、自动下载、自动整理刮削。当我回到家打开电视时,海报墙上已经安安静静躺着这部电影了。这种“所想即所得”的快感,用过就回不去了。
4ed0b0a38474ab298865d16366613da8.jpgc4fcf606a18330ec1ac87ef7eb05b78d.jpg

FreshRSS+RSSHub-打破信息茧房

  • 定位:拿回信息主动权。
  • 体验:在这个算法推荐泛滥的年代,我不希望我的认知被抖音、头条的算法喂养。我用RSSHub把那些不支持RSS的现代媒体(比如B站动态、微博热搜、特定推特博主)强行“RSS化”,变成标准的订阅源。然后用FreshRSS进行聚合阅读。这里没有广告,没有猜你喜欢,只有我真正关心的高质量信息流,我希望这是让我保持深度思考的最后一片净土(毕竟信息流刷起来真的停不下来)。
    image.png

RAGFlow-本地AI大脑

  • 定位:本地知识库,人工智能的专属外挂。
  • 体验:机器里插着的那张RTX3070,如果只用来做视频转码未免太暴殄天物了。我部署了RAGFlow,这是一个基于RAG的引擎,把平时积攒的PDF论文、技术文档、项目白皮书,全部丢进RAGFlow的知识库里。

    • 深度解析:它不像传统的全文搜索那么笨,它能理解表格、图表和复杂的排版(这里必须夸一下fnOS对Docker调用GPU的原生支持,OCR和解析速度飞快)。
    • 对话式问答:遇到技术难题,我直接问它。它会结合我的本地知识库,用大模型总结出答案,并列出引用来源。这才是真正的“私有云笔记”,它不仅记住了,而且它“读懂”了。
      image.png

三个小工具

最后是三个小工具,虽然占用资源不多,但每天都离不开:

  • Vaultwarden(Bitwarden):以前用LastPass,后来它收费还要联网,我就自建了Bitwarden。Docker一跑,全平台的密码自动填充,数据只握在自己手里,那叫一个踏实。
    image.png
  • Seatable:它不只是表格,更是一个轻量级的在线数据库。我用它来管理我的日常生活、实验数据和项目进度,支持API调用,比传统的Excel灵活太多。
    image.png
  • EasyDataset:别被名字骗了,它不仅仅是存数据的,它是我为了写硕士论文专门部署的数据集生产线。搞AI的都知道,数据处理最磨人,而这个工具帮我搞定了最枯燥的脏活累活。

    • 数据清洗&蒸馏:自动剔除垃圾数据,提取核心精华。
    • QA生成:配合本地大模型,自动把文档变成一问一答的训练对。
    • 质量评估:跑完还能给数据集打个分。简单说,我把原始文档丢进去,出来的就是能直接喂给模型的“精粮”。我的毕业证,有一半功劳得归它(和跑它的3070)。
      image.png

Part.04 结语

从DSM到fnOS,从复杂的ESXi虚拟化到物理机直装,这一圈折腾下来,最大的感受就是:越简单越好。没有了虚拟化层的隔阂,看着显卡满血运行、内网跑满万兆,这波搬家虽然累,但绝对值得。当然,折腾NAS就像装修,永远没有真正完工的那一天。

至于文中提到的哪些自建的服务,因为篇幅原因,这次就不展开讲了,后面可能会给每一个出单独的介绍和配置指南(挖坑但不填~

添加新评论