V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jfv
V2EX  ›  NAS

我的自建 NAS

  •  
  •   jfv · 136 天前 · 3445 次点击
    这是一个创建于 136 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    • 一台 n5105 的小主机
    • 一条 SATA 512G 固态
    • 一块 2.5 寸 SATA 4T 固态
    • 一条 M.2 4T 固态
    • 一个 M.2 硬盘盒
    • 一个散热风扇

    硬件组合

    正面和 Switch 对比大小

    侧背面

    一般来说 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, 加上域名解析就可以通过域名访问对应的服务.

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

    frp 示意图

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

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

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

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

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

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

    此文最早发布于我的博客

    33 条回复    2023-12-27 10:27:39 +08:00
    jowan
        1
    jowan  
       136 天前
    frp 速度取决于转发服务端 建议直接用用 ddns 直连 ipv6 体验不是一个等级的
    NessajCN
        2
    NessajCN  
       136 天前
    跟我上一套差不多,后来我嫌 n5105 性能实在不行换成 i3-13100f 了。还有我是定制的 5 盘位机箱+itx 主板,体积也不大, 长宽高都 22 公分这样。nas 毕竟是存储,容量要是还没网盘大就没啥意义了
    jfv
        3
    jfv  
    OP
       136 天前
    @jowan ipv6 兼容性有点差
    jfv
        4
    jfv  
    OP
       136 天前
    @NessajCN 容量不够的话就多插几个外接固态
    HFX3389
        5
    HFX3389  
       136 天前
    @jfv #4 那 USB 撑的住吗:D
    jfv
        6
    jfv  
    OP
       136 天前
    @HFX3389 没问题的 我试过连续满载读写五六个钟 只要温度不上去就没问题
    pxiphx891
        7
    pxiphx891  
       136 天前
    写的不错,不过方案一般。重要数据还是要机械盘 raid1 ,然后再上传到 iCloud 、百度网盘各一份
    jfv
        8
    jfv  
    OP
       136 天前
    @pxiphx891 机械硬盘的噪音注定了我是用不了的 因为网口在房间里
    raid1 对写入性能还是有点影响的 对于我来说并不需要实时备份 所以 cron+rsync 的方案就能满足了
    iamwin
        9
    iamwin  
       136 天前
    nas 这东西最重要的不在于你系统怎么搞,而是在于你的硬盘怎么在软硬件上管理,你这套就完全没有,那也就是玩玩就好了
    bkdlee
        10
    bkdlee  
       136 天前
    你可以参考一下 QNAS MINI 这个项目,也符合你的要求。
    https://github.com/thunder439/QNASMINI
    gbw1992
        11
    gbw1992  
       136 天前
    感谢分享
    我现在其实在等一个 3d 打印机箱方案,最好 4 盘位,
    再加一使用笔记本 cpu 的妖板
    两个硬盘组 raid 0, 剩余两个组 raid 1
    备份文件照片等文件我还是往各大云盘上放
    本地主要还是影音娱乐用
    northernsongy2
        12
    northernsongy2  
       136 天前
    这图画的不错呀
    ZxykM
        13
    ZxykM  
       136 天前
    @gbw1992 我的想法完全和你一样,一样在找 4 盘的 itx 机箱,但体积都很大,最小的也要 20*20*20
    s0nd9r
        14
    s0nd9r  
       136 天前
    请问流程图是用什么软件画的啊
    sdcool
        15
    sdcool  
       136 天前
    cicada 看了下,好难呀,对于小白来说,有难度,,放弃,,还是用花钱的 DS PLAYER 吧
    jfv
        16
    jfv  
    OP
       136 天前
    jfv
        17
    jfv  
    OP
       136 天前
    @sdcool 难在哪里? 现在基本已经零配置一键部署了
    sangmingming
        18
    sangmingming  
       136 天前
    cicada 看了下支持歌词,ui 不错,挺好的。
    不过我在用 navidrome ,因为 api 兼容性比较好,已经有一些移动端的 app 可以直接用了。
    Cabana
        19
    Cabana  
       136 天前
    🧐感觉是不是把备份盘换成机械, 把数据盘换成固态会好点?
    jfv
        20
    jfv  
    OP
       135 天前
    @Cabana 数据盘已经是固态 只不过是 2.5 SATA 而已
    不用机械硬盘还是噪音问题
    byte10
        21
    byte10  
       135 天前
    感觉有点随意😂,太麻烦了。畅网有一个 N100 先锋版 V2 版本,支持 4 个 M2 nvme 硬盘,可以去了解一下。
    jfv
        22
    jfv  
    OP
       135 天前
    @byte10 我用过同款的 n305
    通过拓展卡确实最多可以放 5 条 m2
    但是后盖风扇必须拆了 这样的话散热是个大问题
    byte10
        23
    byte10  
       135 天前
    @jfv 拆了也你这个好看,紧凑啊😂,你这个感觉就是过家家 玩玩的,我以前也是用手机这样弄过的,不合适。你可以看看 qnas 也挺不错。
    jfv
        24
    jfv  
    OP
       135 天前
    @byte10 拆了后盖防尘也是个大问题
    我这套方案已经稳定运行大半年了 还没啥大问题
    Cabana
        25
    Cabana  
       135 天前
    @jfv #20 哈哈, 看到 2.5 寸, 下意识以为是机械了
    tidaizhe
        26
    tidaizhe  
       131 天前
    为啥不用 Mac mini 了?
    jfv
        27
    jfv  
    OP
       131 天前
    @tidaizhe 轻 NAS 用 Mac Mini 浪费
    godall
        28
    godall  
       127 天前
    4T 固态成本太高,我是懒得折腾,还是继续星际蜗牛+黑群配置。nas 性价比最高方案还是硬盘不是固态,当然需要无声环境那没办法只能固态。

    至于备份,我的 NAS 备份武装到牙齿: 主群晖+外置硬盘 8T ( hyper backup 备份),远程从群晖( cloud station 同步)+内置备份( hyper backup 目录备份),当然备份内容主要是文档/代码/照片/音视频这些,至于下载的影片之类的不备份了。

    群晖现在跑的服务:
    1. cloud station 文件同步(主要用于同步笔记本电脑与公司电脑,不用上下班扛着电脑)
    2. 下载机(主要是 docker qbittorrent 下载 PT 资源)
    3. ds file/photo ,主要备份手机照片视频,同时也可以查看群晖所有文档;
    4. media server ,主要用于局域网播放音乐,浏览照片。
    5. SMB 共享,主要用于局域网播放影片(可以从电视机/N1 机顶盒播放视频),其中 80 块的 N1 机顶盒可以直接播放蓝光源码,接天龙功放次世代源码输出无压力。
    6. mysql +python 服务,每天自动跑股票分析,下载日线数据。
    7. 网心云服务,现在不行了每天收益几毛钱,最多赚回个电费。
    8. ddns 服务,自动更新域名 ip

    为啥群晖?因为太稳定了,J1900+4G 内存都不死。
    c0xt30a
        29
    c0xt30a  
       125 天前
    OP 是否方便告知如果本地硬盘上有大量音乐 (>> 1T),Cicada 能否直接使用而不需要手动导入?目前用 Plex 管理音乐,有些曲目刮削不到,想了解下是否还有别的解决方案。
    jfv
        30
    jfv  
    OP
       124 天前
    @c0xt30a 只能通过导入 因为 Cicada 需要创建数据库
    py2ex
        31
    py2ex  
       123 天前
    op 的 M2 硬盘盒怎么固定的?直接粘在小主机背面?
    整体看起来是穿过风扇的钉子同时作为支撑柱支撑小主机,M2 硬盘盒通过某种方式固定在中间
    jfv
        32
    jfv  
    OP
       123 天前
    @py2ex 用那种厚厚的不干胶黏在主机下面的 撕下来也不留痕迹
    这个位置刚好能被散热风扇吹着
    byte10
        33
    byte10  
       122 天前
    加密方案选错了,看看 alist-encrypt 简直完美😋,在线播放加密视频和图片,很多人用了之后就不用 nas ,因为你轻 nas ,完全满足。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2929 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 07:37 · PVG 15:37 · LAX 00:37 · JFK 03:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.