创建 Btrfs 文件系统
- Btrfs 实用程序由 btrfs-progs 软件包提供。
使用以下命令列出包提供的文件。
# rpm –ql btrfs-progs
- 使用 mkfs.btrfs 命令创建 Btrfs 文件系统。
语法是:
# mkfs.btrfs [options] block_device [block_device ...]
我们可以在单个设备或者多个设备上创建 Btrfs 文件系统。
设备可以是磁盘分区、环回设备(内存中的磁盘镜像)、多路径设备或者在硬件中实现 RAID 的 LUN。
mkfs.btrfs 命令的一些可用选项是:
选项 | 说明 |
---|---|
-A offset | 为文件系统指定从设备开始的偏移量。 默认为0,即设备的开始。 |
-b size | 指定文件系统的大小。 默认为所有可用存储。 |
-d type | 指定如何跨设备跨越文件系统数据。 类型参数必须是 raid0、raid1、raid10 或者 single。 |
-l size | 指定叶子大小,Btrfs 存储数据的最小数据项。 默认为页面大小。 |
-L name | 指定文件系统的标签名称。 |
-m profile | 指定跨设备跨文件系统元数据的方式。 profile 参数必须是 raid0、raid1、raid10、single 或者 dup。 |
-M | 将数据和元数据块混合在一起,以提高空间利用率。 此选项会影响较大文件系统的性能,建议仅用于 1 GB 或者更小的文件系统。 |
-n size | 指定节点大小。 默认为页面大小。 |
-s size | 指定扇区大小,即最小块分配。 |
-V | 打印 mkfs.btrfs 版本并退出。 |
Btrfs 是一个用于 Linux 的开源通用文件系统。
该名称源自使用 B 树来存储内部文件系统结构。
文件系统使用了不同的名称,包括“Butter F S”和“B-tree F S”。
Btrfs 的开发始于 2007 年的 Oracle,现在许多(包括 Red Hat、Fujitsu、Intel、SUSE 和许多其他)都在为开发工作做出贡献。
Btrfs 包含在主线 Linux 内核中。
欢迎 on
it
road
创建 btrfs 文件系统 - mkfs.btrfs 示例
- 在单个块设备(例如 /dev/sdb)上创建 Btrfs 文件系统:
# mkfs.btrfs /dev/sdb
- 在两个块设备(例如 /dev/sdb 和 /dev/sdc)上创建 Btrfs 文件系统:
# mkfs.btrfs /dev/sdb /dev/sdc
具有多个设备的文件系统的默认配置是:
-d raid0 – 在所有设备上对文件系统数据进行条带化。
-m raid1 – 在所有设备上镜像文件系统元数据。
- 要创建具有多个设备(/dev/sdb 和 /dev/sdc)的 Btrfs 文件系统并对数据和元数据进行条带化:
# mkfs.btrfs –m raid0 /dev/sdb /dev/sdc
- 要创建具有多个设备(/dev/sdb 和 /dev/sdc)的 Btrfs 文件系统并镜像数据和元数据:
# mkfs.btrfs –d raid1 /dev/sdb /dev/sdc
- 当我们指定单个设备时,元数据将在该设备上复制,除非我们仅指定一个副本。
要在单个块设备(例如 /dev/sdb)上创建 Btrfs 文件系统并指定不复制元数据:
# mkfs.btrfs –m single /dev/sdb
- 对于 RAID-10 数据或者元数据,我们必须指定至少四个设备的偶数。
要创建 Btrfs 文件系统并跨镜像设备 (RAID-10) 条带化数据和元数据:
# mkfs.btrfs –d raid10 –m raid10 /dev/sd[bcde]
挂载文件系统
使用 mount 命令或者在 /etc/fstab 中创建一个条目,就像挂载任何其他类型的 Linux 文件系统一样。
当文件系统包含多个设备时,我们可以引用任一设备。
我们还可以引用文件系统标签或者 UUID。
例子:
# mount /dev/sdb /btrfs
确保我们在 /etc/fstab 中有条目(下面的示例使用 Btrfs 设备的 UUID):
# vi /etc/fstab UUID=e7e5c123-fg76-5gxx-a87d-gt5fed9r768e /data btrfs defaults 0 0
日期:2020-09-17 00:12:46 来源:oir作者:oir