首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BTRFS单一数据FS还在条上吗?

BTRFS单一数据FS还在条上吗?
EN

Server Fault用户
提问于 2018-01-03 15:34:15
回答 1查看 3.2K关注 0票数 6

更新

因此,在对正式文档进行了很长时间的研究之后,我发现btrfs以块的形式分配空间,在使用单个模式时,这些块被分配到磁盘上,而当前未分配的空间最多。因此,数据在不同的磁盘之间被条带化,在我看来,丢失一个磁盘将导致大于1Gb的文件完全丢失。

我的结论是,在raid0 (也由btrfs支持)上使用单一模式的唯一好处是使用不同大小的磁盘的可能性。还有其他想法吗?

原邮政

因此,我使用以下命令创建了一个由3个设备组成的btrfs文件系统,数据模式为单个:

代码语言:javascript
复制
sudo mkfs.btrfs -f -d single /dev/sdb7 /dev/sdb8 /dev/sdb9

然后,我将fs挂载到文件夹nonRaid,并使用

代码语言:javascript
复制
fallocate -l 10G nonRaid/example

我理解使用raid0和single is之间的区别,在我的示例中,raid0将对3种设备上的数据进行条带化,而使用单模式时数据不会被条带化,而是像NTFS那样保存在磁盘上的整个块。我理解得对吗?

如果是这样的话,在使用

代码语言:javascript
复制
btrfs filesystem usage nonRaid/

它向我展示了以下输出:

代码语言:javascript
复制
Overall:
Device size:                  59.98GiB
Device allocated:             13.02GiB
Device unallocated:           46.96GiB
Device missing:                  0.00B
Used:                         10.05GiB
Free (estimated):             47.91GiB      (min: 24.43GiB)
Data ratio:                       1.00
Metadata ratio:                   2.00
Global reserve:               16.00MiB      (used: 0.00B)

Data,single: Size:11.01GiB, Used:10.05GiB
/dev/sdb7       3.01GiB  <---
/dev/sdb8       5.00GiB  <---
/dev/sdb9       3.00GiB  <---

10G数据被分割到了3台设备上,这并不像使用raid0那样均匀。btrfs不支持一个又一个填满整个磁盘的模式吗?因为这种条带化仍然意味着,如果例如/dev/sdb8 8无法恢复,那么我的整个文件系统的全部数据就会消失--对吗?

EN

回答 1

Server Fault用户

发布于 2018-09-05 16:18:05

我知道这是个老生常谈的问题,尽管我在同一条轨道上的研究中发现了这个问题。在btrfs内核邮件列表(https://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg44523.html)上,Hugo给出了一个非常彻底的解释。

dr;btrfs将文件存储在1GB块中,并将它们平均分配给每个驱动器上可用的空闲空间。因此,“对于大小相等的设备,第一个1 GiB将在第一个设备上,第二个1 GiB在第二个设备上,依此类推。”

票数 5
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/890547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档