V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
0x663
V2EX  ›  NAS

消费级非 ecc 内存使用 zfs 文件系统需要定时重启吗

  •  
  •   0x663 · 49 天前 via Android · 2531 次点击
    这是一个创建于 49 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1
    24 条回复    2025-04-21 16:26:16 +08:00
    Devifish
        1
    Devifish  
       48 天前
    不用去重功能基本不影响。 除非你一个月一直没读写,ARC 缓存不更新导致比特翻转可能发生, 从而读取异常数据
    kk2syc
        2
    kk2syc  
       48 天前
    2 周重启一次比较稳妥
    bao3
        3
    bao3  
       48 天前
    如一楼所说,dup 不开,你这一生估计都不会用到 ecc ,不要焦虑。
    我的 zfs 跑一年都重启不到一次,既然是 NAS 肯定会不停读写,下几个电影,这时候你的内存的缓存区会不断被汰换,所以里面的数据出错的概率极低;如果你的内存中会有大量驻留数据,这时候你才会要考虑重启。
    之所以说 dup 不开就不要紧,因为 dup 需要做前后比对,所以只有占用内存,而且是长期占用。这时候你就要重启了。
    busier
        4
    busier  
       48 天前   ❤️ 1
    @kk2syc 如果内存运行 2 周就因为没有 ECC 而出错,那么这个内存基本可以说报废了!
    totoro625
        5
    totoro625  
       48 天前
    raidz2 ,非 ecc ,上次重启是 70 天前 /t/979429
    个人用途随便重启无所谓的,我习惯人在机器旁边手动重启,因为曾经 apt upgrade 升级了 zfs 版本导致 pve reboot 挂了

    PS:如果你用的是 DDR5 消费级内存不管商家是否标注 ECC ,不建议搭配 ZFS 使用,极其容易嗝屁
    因为 DDR5 本身特性就是数据存储非常不稳定,黑心商家标注的 ECC 不是你认为的那个 ECC
    0x663
        6
    0x663  
    OP
       48 天前
    @bao3 @totoro625 @Devifish @kk2syc @busier
    感谢各位的回复。
    @totoro625 ddr4 消费级内存
    @bao3 @Devifish 明白了,我应该是用不到这个功能。
    dilidilid
        7
    dilidilid  
       48 天前 via iPhone
    不需要,你的手机、笔记本、台式机也没哪个是 ecc 的,而且内存压力和频率都比家用 nas 大多了,如果内存这么脆弱你的终端设备应该不断的在写入错误数据而且每天都在死机重启。第一步需要把他们全换成 ecc 设备
    dilidilid
        8
    dilidilid  
       48 天前 via iPhone
    ecc 在服务器的价值是快速定位坏掉的内存,没有 ecc 根本没法确定上万台设备组成的集群里什么玩意儿坏了。家用的话……死机两次你自己跑个 memtest ,内存坏了直接全换掉完事
    Pteromyini
        9
    Pteromyini  
       48 天前
    家用 zfs 是否需要使用 ecc 前几年在 truenas (以前是 freenas)那吵的火热,反正绝大多数的观点和论证都表明家用环境 ecc 意义不大...,认为需要的观点主要也集中在大规模存储上
    msg7086
        10
    msg7086  
       48 天前
    ECC 和重启时间本身也没很大关系啊。
    laminux29
        11
    laminux29  
       48 天前
    不用重启,因为重启并不会解决普通内存条的问题。但你要明白,当你选择非 ECC 内存,你就默认了上面的数据不重要。
    kuanat
        12
    kuanat  
       48 天前
    假如你很关心 bit rot ,然而硬件上又没有 ecc 内存,还有一个替代方案。

    这个方案是利用 intel/amd cpu 自带的内存加密技术,intel 这边叫 Total Memory Encryption TME ,amd 叫作 Transparent Secure Memory Encryption TSME 。大概 intel 是在 11 代消费级 cpu 上开始支持,amd 大概 3000 系就有了,但是具体还要看主板 bios 是否有对应开启选项。

    这个功能的原理是 cpu 内部在每次启动后自动生成一个 aes 密钥,对内存数据进行透明加密,单个加密块的大小为 512bits/64Bytes 。

    当发生 bit rot 的时候,1 bit 的变化最多会造成 512bit 的数据变化,极大概率会造成 crash 或者用户可见的数据异常。
    kk2syc
        13
    kk2syc  
       47 天前
    @busier 搞不懂你的逻辑,二极管非好即坏是吧?
    麻烦重新看一遍,说的不是内存连续运行两周因为没有 ECC 就一定会出错,而是消费级内存如果拿去做需要 ECC 的硬件用途而选择两周重启一次比较稳妥,你能看懂这个逻辑关系吗?
    dilidilid
        14
    dilidilid  
       47 天前   ❤️ 1
    @kk2syc 从实践来说他说的其实没啥错,因为内存要不然就完全不坏,稳定地几天/几周出错一次的情况极其罕见,如果几周就会出一个 error 的话那这个内存大概率已经坏了,出错频率也会很高,你不需要重启也会自己死机,相反重启只会隐藏问题(就跟写程序直接把所有 exception catch 了一样)
    busier
        15
    busier  
       47 天前 via iPhone
    是的 有问题的内存要出错 总是会出错 跟你重启不重启没有关系 因为根本上就无法保证有问题的内存重启后不会很快出错 况且周这个时间单位都感觉扛不住要重启 闹着玩呢

    重启能暂避的问题只能是软件层面上的问题
    kk2syc
        16
    kk2syc  
       47 天前
    @dilidilid @busier 所以 zfs 不是软件层面?你们不看 op 说啥?真小丑
    dilidilid
        17
    dilidilid  
       47 天前
    @kk2syc 你可能真的听不懂别人在说啥,缺乏相关的基本知识或者基本的逻辑能力。。。
    kk2syc
        18
    kk2syc  
       47 天前
    @dilidilid 我回答的是 op 的问题,有人缺乏逻辑理解能力歪楼到硬件损坏上,你也只不过是歪楼的一部分。所以很难想象你还在这里指出别人缺乏能力,究竟是谁缺乏能力?

    就算是软件 bug 爆内存,重启能稳定用,那么提 issue 修 bug 之前,难道,定时重启不是最稳妥的方案?

    指鼠为鸭是被你们玩明白了。
    kk2syc
        19
    kk2syc  
       47 天前
    op:消费级非 ecc 内存使用 zfs 文件系统需要定时重启吗?
    #2:2 周重启一次比较稳妥
    #4:如果内存运行 2 周就因为没有 ECC 而出错,那么这个内存基本可以说报废了!

    我不理解了,你们机器是空跑 zfs 吗?没考虑过其他服务/硬件/驱动导致的错误?对,一切都是内存的硬件有问题。这个世界只有内存有问题。

    @dilidilid @busier
    busier
        20
    busier  
       47 天前 via iPhone
    两周重启一下很有逻辑

    重启治百病

    你赢了
    he1293024908
        21
    he1293024908  
       46 天前
    我觉得没啥必要吧,我记得 zfs 系统并没强烈建议要 ecc ,那肯定就会考虑非 ecc 内存这种情况的数据安全,而且非 ecc 只要不是颗粒有问题或者超频太厉害,本身就是非常稳定的,出错的概率是极小极小的
    tywtyw2002
        22
    tywtyw2002  
       46 天前
    对于 zfs 的理解还是 没有一定的硬件支持,何必上 zfs 呢。小于四块盘,上了 zfs 也没有什么太大的意义。

    大部分组 zfs 的需求还是为了打造准专业级的存储系统。毕竟数据无价。

    需求普遍都是 7/24 ,外加不需要折腾。稳定的环境,都是要能不重启就不重启啊。


    zfs 又不吃 cpu ,一套洋垃圾下来 也没多少钱,128G ECC 白菜价。
    hanyuwei70
        24
    hanyuwei70  
       46 天前
    以我在 btrfs 里面遨游的经历,我是 **强烈建议** 你使用 ECC 内存的,另外还有就是 3-2-1 备份以及定时(我是一个月) scrub 你的数据。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1407 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 17:09 · PVG 01:09 · LAX 10:09 · JFK 13:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.