我有6个设备:4TB, 3TB, 2TB, 2TB, 1.5TB, 1TB (/dev/sda到/dev/sdf)。
第一个问题是:<<p> /strong>对于RAID-1,我有:
- 2TB镜像到2TB
- 1TB镜像到0.5@4TB + 0.5@3TB
- 1.5TB镜像到1.25@4TB + 0.25@3TB 将3TB的剩余2.25 tb镜像到4TB的剩余2.25 tb。
$ mkfs.btrfs --data raid1 --metadata raid1 /dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf
是否会提供给我大约6.75TB?如果是,我可以承受丢失多少磁盘(以及哪些磁盘?)
第二个问题:
对于RAID-1,我可以承受,例如,丢失三个磁盘:
- 1个2TB磁盘,
- 1TB磁盘和
- 1.5TB磁盘,
而不丢失数据。
我怎么能有同样的自由在丢失相同的磁盘与btrfs?
谢谢!
Btrfs按块分布数据(及其RAID 1副本),因此可以很好地处理不同大小的硬盘。您将收到所有硬盘的总和,除以2,而不需要考虑如何将它们组合成大小相似的成对。
如果超过一个磁盘故障,您总是处于丢失数据的危险中:RAID 1无法处理同时丢失两个磁盘。在上面给出的示例中,如果错误的两个磁盘死亡,您总是会丢失数据。
Btrfs会增加在多个磁盘发生故障时丢失数据的机会,因为它会随机分配块,一些块只存储在发生故障的两个设备上的可能性更大。另一方面,如果你丢失了数据,你可能会因为同样的原因损失更少。平均来说,它们损失n位的概率是一样的,但是如果你只对丢失1位的概率感兴趣,那么btrfs就更糟糕了。
然后,您还应该考虑使用校验和的优点,它有助于防止磁盘上的损坏数据。