我组了一台NAS,然后进行了一些瞎折腾。
编辑又名:迟到的飞牛 OS 体验报告之年轻人第一台 NAS 不必是小米
最近小米 NAS 的消息频频,比如米家发布了官方 Home Assistant 套件,又放出了 NAS 基本开发完毕的消息。
陈波在去年 10 月曾透露小米 NAS 产品的定位,目标是打造出最适合小米米家用户的家庭存储产品:
- 生态联动方面:拉通手机、电视、平板、PC 等各个团队,持续打磨手机扩容、AI 相册等功能
- 家庭影音中心:支持电影视频刮削、生成私人影院海报墙、随心点播等功能
- 基础存储需求:网盘管理、资源下载
- 其他生态情况:会深度调研苹果用户需求
米家的 IoT 生态相当完善,进军新领域也总被戏称为“年轻人的第一台 xxx ”,不过在 NAS 领域,已经有老牌群晖,新势力绿联、极空间等占领市场,又有飞牛 OS 横空出世,成为了新手自组 NAS 的不错选择。上述功能大多称不上独占,基于个人需求,你的第一台 NAS 可能不必是小米。
初见
老实说,我一直觉得有一台 NAS 很酷。
这一点哪怕是在见到了同学家已经搁置蒙尘的群晖后也并未动摇。毕竟我的确找到了一些自圆其说的合理用途:
- 比如,备份我几十 GB 的工程,即便他们大多技术浅薄似乎没有回顾的必要
- 或是搭一些本地 docker 应用,这倒的确是一个重要的需求。比如我可以把 LobeChat 搭建在本地,再用内网穿透满足在外临时用途,从而省下一台云服务器三百多的年费...
不论如何,飞牛 OS 一公测,我就迫切的翻出一台闲置许久、濒临报废的笔记本,装上体验一番。原本这篇体验报告似的文章也应该在当时完成,但我鸽了。
在购买了一台专用设备跑飞牛之后,又经过一个多月的使用,我想是时候记录一下我都拿一台 NAS 干了些什么。不过,让我们先从困难重重的前置关卡开始。
免责声明:FnOS 目前处于公测阶段,曾经在 V0.8.29 出现过普遍严重的更新失败、更新后无法连接或数据丢失现象。不存在真正百分百稳定的存储系统,保证数据安全可靠的最好办法永远是==备份==。
安装
我所购买的主机是四盘位的天钡 WTR Pro N100,还有一个 AMD 5825U 的高配版,综合考虑需求和预算后就是没钱,还是选了 N100。
安装飞牛 OS 必须要有键盘
✍✍✍✍✍✍✍
好吧,这是因为我真的没有购买一块有线键盘。在家中没有人使用台式机的情况下,机械键盘已经逐渐淡出了我的视野,只有一块罗技 K380 ,但它是蓝牙连接的。
我本有一个绝佳的省钱主意:用已经 root 的 K50U 安装 USB Gadget Tools 和 HID Keyboard,把它当成虚拟键盘来用,不过并没有成功.../根据项目 issues,也许是 5.10 linux kernel 的问题
总之,最后还是向邻居借了一块键盘,完成了安装。
远程访问
仅仅为了远程访问 NAS 中的文件并不需要付出夺少额外的努力,飞牛官方提供的 ==FN Connect== 服务就足以远程查看照片和影视(带宽不足,转码来凑)。
当然,使用官方中继服务需要提供手机号注册,对于着重隐私的用户,这并不是最优解。此外,对于使用 Docker 搭建了容器,希望在外访问维护的需求,官方服务也不能满足。
因此,最终选择了虚拟组网+frp 内网穿透的组合,虚拟组网用于访问搭建的 Docker 服务的管理面板,frp 则用于大带宽的网盘服务。
事实上,牺牲一点时延就能以*比花生壳推出的 NAS 套餐更低的价格*享受到大得多带宽的外网访问服务,进而通过 ACME 申请证书+反向代理实现自定义域名,限制开放可访问的端口。
鉴于大部分家庭宽带上行都只有 50 M,通常选择 50M+ 带宽 1h1g 的服务器就能跑满。
家中有 IPv4/IPv6 公网无疑是最理想的,通过 DDNS 就能轻松实现外网访问,可惜我没有...
附属硬件
UPS
WTR Pro 自带的四盘位目前绰绰有余了,而我为其配备的额外硬件只有一个 UPS。
UPS即不间断电源(Uninterruptible Power Supply),是一种含有储能装置的不间断电源。主要用于给部分对电源稳定性要求较高的设备,提供不间断的电源。当市电输入正常时,UPS 将市电稳压后供应给负载使用,此时的UPS就是一台交流式电稳压器,同时它还向机内电池充电;当市电中断时, UPS 立即将电池的直流电能,通过逆变器切换转换的方法向负载继续供应220V交流电,使负载维持正常工作并保护负载软、硬件不受损坏。
供电稳定是保障硬盘数据安全的重要一环,尽管身处一线城市,市电供应已相当可靠,UPS 也能规避在家中意外跳闸或者手动拉闸前忘记关闭设备导致的不必要的故障风险。
我购买的是==瓦力盒子 W120==,支持 FnOS 内置的 UPS 管理,设置为 1 分钟后关机即可。W120 自带的小屏幕也能清晰的查看连接情况和电压电流,通过蓝牙与 WIFI 链接后可在小程序配置设备。
机械硬盘
对自己的捡垃圾水平没有信心,因此买了希捷酷狼 4TB。WTR Pro 的盘位设计对于 3.5 寸机械硬盘可以直接卡入,无需螺丝和 SATA 线。虽然根据评测,溢价在于 3 年内的一次免费数据恢复服务🤔...
花活
如果仅仅是为了基本的文件储存备份,「私有化」绝对不足以让我用任意一款国内网盘年费会员十倍的价格搭建一台 NAS。当然,这并非提倡将 NAS 拓展为一台 All in boom one 的计算中枢,一切都基于你的需求。我搭建了一些服务以供参考。
Docker 应用
支持 Docker 应用的快捷部署是 NAS 系统的合格项之一。FnOS 自带的应用套件相册(基于 Immich)、影视,以及应用中心内的应用本质上均是 Docker 容器。目前内置的相对较少,更多需要依赖自己拉取构建。
注:以下内容不含详细搭建教程,有需要请自行搜索相关内容。
Koishi+Lagrange
复活吧,我的爱人!
以前的 Qbot 方案大多因为签名等问题比较难保持在线,而基于 QQNT Desktop 的 liteloader+LLOnebot 方案又在日前遇到了频繁的环境异常自动下线,要求扫码重登问题。
Lagrange 是一个 QQNT 协议的良好实现,Docker 容器内存占用在 100 MB 左右,非常轻量化。至于稳定性,非官方机器人的稳定性与机器人账号的使用情况关系密切,在我"悉心照料多年"的号上保持在线比较顺利。
Koishi 则是一个跨平台、可扩展、高性能的机器人框架,通过安装社区内丰富的 Adapter,可支持 Onebot、Telegram、Matrix、钉钉、飞书等多个聊天平台。Koishi 本体的内存占用很小,在开启 puppeter 插件调用 chromium 内核完成网页浏览,图片渲染等工作时占用 250~300 MB 内存。
如果你遇到了占用 500+MB 内存的情况,根据 Github Issues,在 puppeter 的启动参数中添加 --disable-gpu
可以解决。
具体到 Koishi 插件,我推荐的有:
- Chatluna,在聊天平台快捷调用你拥有的 LLM api,也可以通过安装 character 插件实现模仿群友说话风格、自定义人设模板等,是 Koishi 上接入大模型的理想选择。
- imitate,无需配置的自动随机发送群友的某条历史聊天记录,往往能出其不意的以极低的资源消耗制造节目效果。怀念 Chat Learning,但它基于 Mirai 且久未维护了。
- pixluna,多图源
涩涩插件,无需多言。 - Deer-pipe,燕国的人怎么会拥有鲁国的纸?可以视作一个打卡交互插件。
- idiom-dictionary,成语查询插件,好用。实际上,翻译之类的功能都可以通过接入 LLM 后以自然语言要求实现,交互更加自然流畅,因此一些功能性插件就不再列举。
- ......
1 Panel
这才是真正的 linux 管理面板.jpg
注:在应用中心安装的 1 Panel 可能遇到无法在面板中一键更新的情况,在这里下载并解压 1panel-v1.10.20-lts-linux-amd64.tar
找到 1panel.service
通过 1 Panel 文件管理上传到 etc/systemd/system/
后即可正常一键更新。
在国内宝塔面板要求手机号实名认证而受到诟病后,1 Panel 是一个有力的运维管理替代品。借助组网或反向代理,在外也可以登入 1 Panel 后管理 NAS 系统。在当前 FnOS 对移动端浏览器比例并不友好的情况下,1 Panel 管理 Docker 容器更加方便,内置应用商店也更为丰富。
Navidrome
飞牛影视的刮削、播放转码已经够用了,但对于音频支持就很孱弱,移动端 APP“飞牛私有云”甚至不支持.mp3,.wav 等常见格式的音频试听。虽然可以通过搭建 Alist 本地存储,利用 Alist 强大的在线预览功能曲线救国,但更好的本地音乐库还是得搭建一个音乐服务器,比如 Navidrome,在飞牛应用中心即可下载。
搭建完毕后,客户端我推荐 音流。为了维护音乐标签,建议在 Windows 安装音乐标签,WebDav 链接到 NAS,为下载的音乐匹配歌词等标签。
虚拟机
注:不要高估自己设备的性能。事实上,N100 的性能跑以上的 Docker 容器轻轻松松,但虚拟机就比较吃力了。
我尝试搭建了精简后的 Win 10 系统,然后安装了巧克甜恋 2 和柚子社的旮旯给木......最终,在 WindowsRDP 音画不同步,Moonlight+Sunshine 杂音频频,UU 远程性能较差,软解帧率电竞级后,N100 证明了自己并不具备成为 gal 推机的潜质。也许 GPU 直通能够解决,不过在配置好 iommu 后,Windows 识别到了 GPU 但仍然无法正常工作,因此暂时作罢。
论坛中表示可能是当前飞牛虚拟机 Windows 模板的 bug,春节后应该会发版修复,后续可能会在此更新内容。
总结
FnOS 正处于快速开发期,日趋完善成熟,期待未来的更新!