我的自建 NAS

147 天前
 jfv

折腾 NAS 也差不多两年的时间了, 一开始的 Mac Mini + 硬盘柜的方案, 到后来直接购买成品 NAS, 再到现在的小主机 + 外接硬盘的方案. 小主机 + 外接硬盘的方案已经稳定运行半年多了, 目前体验还可以.

首先说下我的需求, 主要是影音 + 数据备份, 对容量和性能的要求不高, 所以这套方案所有硬件以及组合如下:

一般来说 M.2 的固态才是潮流, 不过在购买小主机的时候没注意参数, 后面才发现只支持 SATA 固态. 小主机本身有内置风扇, 不过转码的时候机身还是会发烫, 所以额外搞了个外置风扇, 同时还能给外置的 M.2 固态硬盘散热.

这套方案只有三个硬盘, 512g 的作为系统盘, 两条 4T 一条作为数据盘另一条作为数据盘的备份, 所以实际可用空间是 4T. 虽然有点少, 不过对于我这种轻 NAS 用户来说足够了.

用功率计测过, 待机时整体功耗不超过 8w, 满载 20w 出头, 加上全固态和静音风扇, 完全没有噪音污染, 只不过稍微有点灯光污染(主机+硬盘盒+网线).

软件方面, 操作系统选择了 Ubuntu Server, 盘位太少就没必要搞什么 trueNAS/Unraid, 而且 Ubuntu 用起来也顺手. 服务全部使用 Docker 托管, 配合 Portainer 可以很方便地在浏览器进行管理.

其他的话, 影视服务选择的是 Jellyfin, 音乐服务是自己开发的方案知了, 备份服务选择的是 Syncthing

不像成品 NAS 自带远程访问, 自建 NAS 往往需要自己解决远程访问的问题. 我这里采用的是 frp + vps 的方案, 通过 frp 将需要公网访问的服务反向代理到具有公网 IP 的 VPS, 加上域名解析就可以通过域名访问对应的服务.

暴露服务到公网总是有风险的!!!

为什么我会抛弃成品 NAS 选择纯固态的方案, 首先大多数成品 NAS 都使用机械硬盘, 因为我的网口在房间里, 机械硬盘的噪音足以影响休息. 其实这台小主机是支持 wifi 的, 最开始的方案是外接机械硬盘柜, 然后放到阳台避免噪音污染的. 但是 wifi 体验下来有两个问题, 第一是速度太慢了, 第二总是断流, 莫名其妙地断开连接导致服务不可用, 需要等待 wifi 自动重连才恢复正常. 所以后面才换到目前这种全固态方案, 放在房间内使用网线连接, 没有噪音污染.

现在陆陆续续有成品纯固态 NAS 推出, 不过现阶段的性价比还是太低了.

其次, 机械硬盘实在是太笨重了, 加上成品 NAS 动则四盘位六盘位的体积, 实在不好摆放, 目前这套方案体积非常小巧, 完全不占用地方.

说一下容量的问题, 目前 4T 的容量确实是捉襟见肘. 不过小主机有多个 USB 的接口, 电源功率也还足够, 后续插多几个外接固态问题也不是很大.

然后是备份的问题, 虽然我做了本地备份, 如果数据特别重要的话, 本地备份总是不够的. 之前看到过一个案例, 某位博主的家里被水淹了导致 NAS 完全报废, 幸运的是他有一份异地备份从而能够完整地恢复数据. 我们可能也会遇到同样的问题, 一堆鸡蛋放在同一个篮子里总是不安全的, 所以我目前的方案是把重要的数据通过 duplicati 加密分片后上传到网盘. 当然, 网盘作为异地备份也不是一个安全的选项, 如果后面有时间的话, 可以考虑维护两个 NAS, 分放两地互为备份.

不同于大多数方案选用的 RAID, 本地备份我用的是 cron + rsync 的方式. 首先我的盘位不多, 无论哪种 RAID 方案都不太合适. 其次, RAID 有可能将一份数据分散在多盘, 这对于数据恢复来说是非常有难度的.

此文最早发布于我的博客

3494 次点击
所在节点    NAS
33 条回复
jowan
147 天前
frp 速度取决于转发服务端 建议直接用用 ddns 直连 ipv6 体验不是一个等级的
NessajCN
147 天前
跟我上一套差不多,后来我嫌 n5105 性能实在不行换成 i3-13100f 了。还有我是定制的 5 盘位机箱+itx 主板,体积也不大, 长宽高都 22 公分这样。nas 毕竟是存储,容量要是还没网盘大就没啥意义了
jfv
147 天前
@jowan ipv6 兼容性有点差
jfv
147 天前
@NessajCN 容量不够的话就多插几个外接固态
HFX3389
147 天前
@jfv #4 那 USB 撑的住吗:D
jfv
147 天前
@HFX3389 没问题的 我试过连续满载读写五六个钟 只要温度不上去就没问题
pxiphx891
147 天前
写的不错,不过方案一般。重要数据还是要机械盘 raid1 ,然后再上传到 iCloud 、百度网盘各一份
jfv
147 天前
@pxiphx891 机械硬盘的噪音注定了我是用不了的 因为网口在房间里
raid1 对写入性能还是有点影响的 对于我来说并不需要实时备份 所以 cron+rsync 的方案就能满足了
iamwin
147 天前
nas 这东西最重要的不在于你系统怎么搞,而是在于你的硬盘怎么在软硬件上管理,你这套就完全没有,那也就是玩玩就好了
bkdlee
147 天前
你可以参考一下 QNAS MINI 这个项目,也符合你的要求。
https://github.com/thunder439/QNASMINI
gbw1992
147 天前
感谢分享
我现在其实在等一个 3d 打印机箱方案,最好 4 盘位,
再加一使用笔记本 cpu 的妖板
两个硬盘组 raid 0, 剩余两个组 raid 1
备份文件照片等文件我还是往各大云盘上放
本地主要还是影音娱乐用
northernsongy2
147 天前
这图画的不错呀
ZxykM
147 天前
@gbw1992 我的想法完全和你一样,一样在找 4 盘的 itx 机箱,但体积都很大,最小的也要 20*20*20
u1s1a
147 天前
请问流程图是用什么软件画的啊
sdcool
147 天前
cicada 看了下,好难呀,对于小白来说,有难度,,放弃,,还是用花钱的 DS PLAYER 吧
jfv
147 天前
jfv
147 天前
@sdcool 难在哪里? 现在基本已经零配置一键部署了
sangmingming
147 天前
cicada 看了下支持歌词,ui 不错,挺好的。
不过我在用 navidrome ,因为 api 兼容性比较好,已经有一些移动端的 app 可以直接用了。
Cabana
146 天前
🧐感觉是不是把备份盘换成机械, 把数据盘换成固态会好点?
jfv
146 天前
@Cabana 数据盘已经是固态 只不过是 2.5 SATA 而已
不用机械硬盘还是噪音问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/999761

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX