时隔七年,我终于弄了人生第一台NAS
又到了618,每年一到618的前夕,各个论坛社区里总有人会提到NAS这个东西。NAS,故名思意就是个存储,只是人们越来越让它干非存储的事,All in One有它的优势也有它的不足,每个人有每个人的需求,但是请记住,不要给自己创造需求,希望这篇博客可以让你拔草/种草。
需求
就如标题那样,其实我第一次萌生需要一个NAS已经是7年前的事了,没错群晖的DS916+发布后我就种草了,但是当时我对存储的需求是什么,下载和存储影视。其实我一直都有下柯南来看的习惯,即便我拥有柯南的正版流媒体账户。柯南我从13年重新开始追,我一直都是观看的某字幕组压制的版本,为什么我不选择官方正版的字幕呢?因为官方字幕曾经出现过剧透的翻译问题,并且还是在剧场版里。随便说下,剧场版送审时提交的版本为该字幕组翻译的版本,而上映时却采用的八一厂的翻译。
这就是我7年前的需求,很简单,于是我采用我2013年时的方案,USB挂载硬盘进行冷备,并且这个方案实施了七年。
而我现在的需求发生了哪些变化?
- 需求的存储空间越来越大
- 我购买了一个性能非常强劲的Android TV盒子
- Google drive的存储规则修改 免费的云空间不够我未来使用
而相当于七年前,我软硬件环境又有了哪些变化?
- 宽带100M/10M 升级为 1G/50M
- 公网IPV4,DDNS,OpenVPN
- 全屋WiFi6覆盖,老旧2.4G设备全部更新淘汰
于是我决定我需要购置一款NAS,但是选NAS时,我遇到了一些问题。
- 群晖等国际大厂的家用NAS,硬件不够卷,即便不考虑“智商税”的部分,其硬件规格真的只是满足当年设备需求。
- 国产NAS,硬件够卷,用户入口侧的APP也卷,但是因为隐私性,对不起我用不起。
- DIY NAS,我有能力和精力维护。
自己DIY NAS有个最大问题,箱子。DIY的NAS并没有像成品NAS那样拥有紧凑的机身,大、贵是很多箱子的特征,选来选去,我选中了一套3D打印的方案QNAS4,4盘位的机箱(内部可额外加装两块2.5寸的硬盘)
组装
该项目有提供BOE表,自行购买即可,说几个注意点吧
- 该开发板使用的是
J4125
,根据Intel Ark上的说法,最大内存为8G,因为该开发板为单根内存槽,如果插入单颗粒大小2G的内存,可能无法点亮,建议采用单颗粒1G,8G 2400的内存条 - 虽然板子有自带PWM风扇的转接线,但是我并没有在BIOS里找到风扇曲线调整,并且在DSM7里也提示不支持PWM风扇。
- 关于jmb585转接卡,建议购买大厂,并且安装后尽量不要再去插拔,易损坏。
- 集成硬盘背板有个安装教程,可以找卖家索取,其余的部分真的很简单,基本上你拆过笔记本清灰那么你就有能力装它。
安装系统
DIY NAS除了高度可定制硬件规格,还有就是可自行安装各种操作系统。我这里选择的系统为群晖DSM7.2,选择黑群晖很简单,一是我的设备的硬件规格不配玩truenas,二是其规格和群晖的DS920+高度接近,群晖多两个M.2硬盘位,我的NAS则是两个2.5G的网卡。
有的人可能会说,你这个NAS并没有比成品NAS强在哪啊,新的成品NAS已经开始采用12代处理器了,你这个还是10代处理器了,除了双2.5G网卡没有任何强势点。是的,这套配置其实就是CPU是我觉得毕竟拉跨的地方,但是想想,作为存储J4125
的不够他跑满2.5G网卡吗?8G的内存也足够DSM7.2+Jellyfin+qBittorrent运行了。最重要的是我花了950得到了一个拥有的猫扇的小体积NAS,这个NAS其实就是为了机箱的妥协。如果不是机箱的束缚,谁不想用N100/N305做NAS呢。
群晖我这用的引导项目是arpl-i18n,注意该项目截至2023年5月30日并没有集成J4125
集显驱动,如果你需要用集显,请自行下载集显驱动。
部署Docker
在DSM7.2中docker已经升级更名为Container Manager,支持了Docker Compose。如果你的访问访问国际互联网存在问题,请使用微软的https://dockerhub.azk8s.com
镜像服务。
关于Jellyfin的docker镜像,可以选择nyanmisaka打包分发的版本,或者选择jellyfin的官方分发,一个拥有良好社区环境的支持的版本才是值得信赖并使用的版本。
长时间使用报告
2024/03/15更新
问题
硬件部分
- M2转SATA的转接卡
JMB585
可能因为机箱的打印精度的问题,导致可能会因为重力、外部震动等关系,导致整个JMB585
接触不良,硬盘全部脱机,Raid降级等问题,需认真考虑NAS的摆放。 JMB585
发热量不低,NAS存放环境风道不好的话,建议安装被动散热器,且考虑3D打印机箱的精度问题。J4125
发热量不大,无需额外安装被动散热,可能摸着温度不是很低,但是请放心,它不会得新冠。- 开发板的BIOS里面的风扇调整比较简单,手动固定某个值百分比即可,我是选择固定了一个800转的猫扇,手放在硬盘仓前,即便装满4块盘也可以感觉到很明显的吸力(我的选择是风扇排风,直接将硬盘的废热排出机箱)。
软件部分
软件部分里提到的BUG,非常主观性,且不一定在所有类似的场景里都能复现,但在我所拥有的这套软硬件环境个体里是可复现的
- 我安装DSM时为2023年5月,当时DSM的正式通道还是
DSM7.1.1
,7.2
为RC版本,我从7.1.1
,升级到7.2 RC
后,因模拟的机型为DS920+
,其使用了新的特性WriteOnce
,而我的设备上出现了什么bug呢?创建共享文件夹这个功能不正常,选加密的时候有且仅有在选择WriteOnce
时才能创建成功,其余都不行,若选择跳过也自动创建的是WriteOnce
文件夹。于是当时我选择回滚到7.1.1
。而到了11月份我重新烧录新的引导,且升级安装7.2
的正式版本时,这个BUG依旧存在。甚至我改机型为DS918+
且格盘安装后创建非加密的共享文件夹也会报WriteOnce
的错,但是再次创建就可以创建成功。此案例我没有在社区找到任何类似的案例。 - Docker下的Jellyfin,
J4125
的GPU为UHD 630
,虽然J4125
的CPU部分架构为Gemini Lake Refresh
,大家爱称呼它为第十代CPU,但是它的iGPU其实是Gen9.5
,而10代CPU里面既有9.5代,例如i9-10980HK
,也有11代,例如i7-1065G7
。按照社区查到资料,Linux下内核添加i915.enable_guc=2
后可以使用Low-Power H.264
,但是我开启失败了。 - Jellyfin里的刮削时候,我刮削了詹子萱这位演员在豆瓣的数据后,无法在web界面编辑其信息,且点击她查看详细信息时Jellyfin一直转圈,Jellyfin打印的日志也报错,删除
library.db
后重新刮削也有这个问题。
非NAS部分
我使用的非大陆地区销售的类原生Android Phone和TV以及Windows PC,使用Android TV观看海外正版影视作品时,各种特性均能正常工作(论花钱认证的重要性)。然而我使用它们在Jellyfin观影时灾难就来了。
- Android上的ExoPlayer可以正常的播放HDR、杜比等影片,但是Exoplayer对于字幕的支持极差。
- 在Android上使用MPV播放时,虽然对于字幕有了更完善的支持,但是HDR、杜比等均不支持。
- Android下的Kodi硬解杜比仅支持部分格式(注:硬解需要设备过认证)。
- B站的ijkplayer放国产剧的时兼容性更好,但是设备功耗会更高,至于HDR、杜比等特效没测试。
希望Android这部分的生态能加强吧,能早日推出Infuse这种级别的APP吧。