全面精细的存储方案对比——搭建家庭NAS系列( 八 )

Btrfs是当年Linux阵营对标ZFS的产物 , 随着ZFS登陆Linux , 红帽弃坑 , 综合各方面均不如直接上ZFS , Btrfs的RAID5/6储存池功能存在致命BUG不能用于生产环境!

文件完整性与修复

阵列只保硬盘不保数据 , 单纯的阵列冗余已经无法保证数据安全了 。 RAID5之所以不再安全核心就是硬盘的读写错误率 , 阵列卡只有在进行巡检操作时才会修复潜在的错误 , 其他时候发生错误要么会发生传染要么硬盘被视作损坏踢掉 。 文件完整性校验解决了这个问题 , 通过校验和可以验明文件真身 , 验证失败则可以利用奇偶校验进行修复 , ZFS这样的文件系统即使极端情况无法修复也能准确得知出错的文件是哪一个 。

极端情况下的数据恢复

极端情况也就是损毁的硬盘数超过了冗余的数量

对于阵列而言是致命的 , 因为阵列没有与文件系统对接 , 已经被踢掉的硬盘强制上线也很容易被再次踢掉 , 只得通过第三方软件重建虚拟阵列恢复 。

对于ZFS而言 , 只要硬盘还没恶化到完全无法读的地步 , 都可以强制上线后转移数据 , ZFS日志会显示出无法读取和校验出错的文件 , 其它文件是安全的 。

推荐阅读