如何将 Ext 文件系统转换为 Btrfs

btrfs 或者 Butter FS 是一个文件系统,有一些有趣的特性:

  • 一个可以有 FS 快照。这就像文件系统在某个时间点冻结。
  • btrfs 是一个基于盘区的文件系统。这意味着没有指针列表。 btrfs 跟踪连续块。
  • btrfs 对数据和元数据进行校验和。因此,它可以“实时”检测文件系统中的错误。
  • 可以从 ext3/4 切换到 btrfs。

一些用户可能希望使用 BTRFS 文件系统而不是 ext2/ext3/ext4 文件系统。
本文说明了如何将 ext2/ext3/ext4 文件系统转换为 btrfs。

www. On IT Road .com

将 Ext 文件系统转换为 Btrfs

Btrfs 支持将 ext2. ext3. ext4 文件系统转换为 Btrfs 文件系统。
原始 ext 文件系统元数据存储在名为 ext#_saved 的快照中,以便在必要时可以反转转换。

使用 btrfs-convert 实用程序转换 ext 文件系统。
在转换文件系统之前,请务必制作备份副本。
要转换非 root ext 文件系统,请执行下面列出的步骤。

  1. 卸载ext文件系统。
# df -hP /data
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda        9.8G   37M  9.2G   1% /data
# umount /data
  1. 使用fsck检查ext文件系统的完整性。
# fsck /dev/sda 
fsck from util-linux 2.23.2
e2fsck 1.42.9 (28-Dec-2013)
/dev/sda: clean, 11/655360 files, 83137/2621440 blocks
  1. 使用 btrfs-convert 实用程序转换文件系统。
# btrfs-convert /dev/sda
create btrfs filesystem:
	blocksize: 4096
	nodesize:  16384
	features:  extref, skinny-metadata (default)
creating ext2 image file
creating btrfs metadatacopy inodes [o] [         2/        11]
conversion complete
  1. 编辑 /etc/fstab 并将文件系统类型更改为 btrfs。
# vi /etc/fstab
UUID=e5b5c118-fb56-4fad-a45d-ff5fad9a649d /data           btrfs   defaults      0  0
  1. 将转换后的文件系统挂载到原挂载点上。
# mount /dev/sda /data
  1. 在“mount”命令中验证新的文件系统类型。
# df -hP /data
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda         10G  342M  9.7G   4% /data
# mount | grep data
/dev/sda on /data type btrfs (rw,relatime,seclabel,space_cache,subvolid=5,subvol=/)

注意:我们不能将根文件系统或者可引导分区(例如 /boot)转换为 Btrfs。

日期:2020-09-17 00:13:26 来源:oir作者:oir