@
justaname #34 假传圣旨的卑鄙小人!
PVE 官方资料里在 zfs 页面提到了 ecc ,只提到一次,上下文用的词语是 recommend ,除此之外没有哪怕一个地方提及非 ecc 的危害也没有反对使用 ecc 。这叫“强烈”建议?这强烈是你自己加的吧喂!
oracle zfs 、openzfs 、truenas 官方资料中则干脆连 ecc 这个词都搜不到了,唯一把 ecc 奉为圭臬当山歌唱的就是 truenas 论坛里面,你是不是被他们托梦看的“资料”啊?
来,时间充裕,我不跟你玩什么简明扼要的论证,我就是要朝你这种焦虑贩子输出情绪和贬斥。
如果我给的那篇文章链接你真的仔细看了,那下面这段内容你应该已经读过,但是谁知道呢,说不定你嘴上说你读过,其实你可能一个字没看,或者边看边忘呢。
There's nothing special about ZFS that requires/encourages the use of ECC RAM more so than any other filesystem. If you use UFS, EXT, NTFS, btrfs, etc without ECC RAM, you are just as much at risk as if you used ZFS without ECC RAM. Actually, ZFS can mitigate this risk to some degree if you enable the unsupported ZFS_DEBUG_MODIFY flag (zfs_flags=0x10). This will checksum the data while at rest in memory, and verify it before writing to disk, thus reducing the window of vulnerability from a memory error.
I would simply say: if you love your data, use ECC RAM. Additionally, use a filesystem that checksums your data, such as ZFS.
这是 2014 年 Matthew Ahrens 在论坛上的回帖
https://arstechnica.com/civis/threads/ars-walkthrough-using-the-zfs-next-gen-filesystem-on-linux.1235679/page-4#post-26303271Matthew Ahrens 何许人也?乃 sun 公司当初创造 zfs 的核心人员之一,现今的 Delphix 公司 zfs 开发团队的领导。
他上面说的这段哈啥意思呢?开头他说:zfs 没有什么特别的地方,使它比其他文件系统更加需要、更加依赖 ecc 内存。结尾他说:你实在担心你那宝贝数据出问题,不管是利益休戚相关还是心理作用,你担心,你就上 ecc ,不管你用的啥文件系统,你担心就该上 ecc ,那如果有了 ecc 还嫌不够呢,你还可以加一个 zfs 作为额外的保险。那么是 ecc 的存在才使得 zfs 能够可靠运作吗,不是;是 ecc 让 zfs 变得更好了吗,不是;是什么呢,是 zfs 使 ecc 变得更好了,原因无他,zfs 牛逼,zfs 屌大,zfs 无论在任何内存哪怕是坏内存上都能通过自己的系统将错误减到最小,杀爆在座各位的其他文件系统。
因为 zfs 本身相当于加了一层校验,校验不通过它是不会往盘上回写覆盖数据的。在 zfs 面前,其他的文件系统就是小瘪三。
你有 ecc ,恭喜,你还用了 zfs ,好,双倍校验,双倍恭喜。
你没 ecc ,但你的内存没坏,没事放心用,哦你用 zfs 啊,那更没事了。
你没 ecc ,而且你的内存已经有问题了,跑 memtest 报错那种,呵呵,祝你好运……等下,你用的是 zfs 啊,诶,问题不大,但是还是赶紧换根条子吧,又不贵,非要拼人品赌运气吗?
你没 ecc ,而且内存有问题,而且文件系统还不是 zfs ,emmm ,回去过得开心点吧,想吃啥想玩啥的尽量满足吧,不会太久了。
就你那心心念念的 1%还是 0.01%,你还在乎那几个小数点呢?内存条要是真有这么大的错误率,早蓝屏、内核崩溃了,这么高的错误率,跑 memtest 还不得第一轮就列表格?
但是不用担心,如果你真的有一条这样的内存条,zfs 依然会尽全力避免数据损坏,毕竟除非智子干扰,否则内存里面不会错得那么“巧”,zfs 的块校验就能发现错误,发现了错误就好办了,别往回写不就行了么,你以为 zfs 是跟你一样的脑残呢?
再说,这么宝贝的数据,vdev 肯定有冗余吧,哪有正经人玩存储不戴头盔,啊不是,不设冗余的?
那是我了,我就是这种不正经的人,单硬盘 zpool ,无冗余,无 ecc ,这都快 8 年过去了,要不我再维持现状多跑几年,说不定到时候我哭了,你可以来笑我?
就你这种桶底湿,还学别人半桶水那样晃呢?人家半桶水虽然傻逼但他能晃出响来,你呢?