如何将我的根分区从BTRFS转换为EXT4?


13

是否可以将btrfs转换为ext4而不会丢失数据?我对btrfs的读/写操作遇到了非常低的速度。

Answers:


7

我只是在介绍可用的工具,而不是经验或文档。您可能想用一个分区(甚至只是一个映像)来测试它,如果一切都出错了,您也不介意丢失。请勿尝试此操作而不进行备份。

btrfs-convert具有回滚功能以撤消转换。我不确定这是否适用于未转换为btrfswith的分区btrfs-convert

  1. 首先卸载文件系统。如果对系统至关重要,请启动LiveCD。

  2. 安装 btrfs-tools

    sudo apt-get install btrfs-tools
    
  3. 回滚转换

    sudo btrfs-convert -r /dev/sdXn
    

6
请注意,这仅适用于转换后的文件系统,并且仅当您尚未删除原始ext3 / 4文件系统的快照时才适用。
htorque 2011年

谢谢,但是不幸的是,这对于未从其他文件系统转换而来的btrfs分区不起作用。H猜我必须重新安装。
mFat 2011年

7
请注意,这将放弃自转换文件系统以来对文件系统所做的任何更改。它将像转换前一样恢复到ext2 / 3文件系统的内容。
poolie 2012年

4

据我所知,您不能将btrfs转换为任何其他文件系统。


如果将ext转换为btrfs,则不正确!您将拥有快照以
撤消

1

我使用具有多重引导发行版的系统(ext4上的Ubuntu,btrfs上的Xubuntu)进行了此操作。在运行Ubuntu时,我已将Xubuntu btrfs主目录分区,并使用fsarchiver对其进行了归档。然后,我可以再次使用fsarchiver将其还原到另一个分区并指定ext4文件系统类型。这似乎行得通。

仍然在Ubuntu中,我将Xubuntu根分区挂载在/ mnt上,并编辑/ mnt / @ / etc / fstab来更改/ home的挂载以指向新的ext4分区,同时更改UUID和fs类型,然后删除子体积数据。我保存了文件,然后重新启动进入Xubuntu。

引导时出错,并且引导停止。错误是我有另一个要挂载到〜/ Documents目录的分区,该分区失败了。我选择手动解决此问题。事实证明,我的根分区安装为ext4很好,但是当我执行列表命令时,我得到了

#ls /home
@home

因此,原来的btrfs子卷结构仍在ext4文件系统中。我发出命令

mount --bind /home/@home /home

然后,我按ctrl-D继续引导,而Xubuntu继续引导,一切正常。我尚未完成此操作,因为我仍处于此初始引导中,但是我确定可以将该bind命令放入我的fstab文件中。也许我可能已经将子卷信息留在了fstab条目中,我不知道。

但是,我要做的是(这是题外话),是从另一台计算机上为Xubuntu采取/ home(ext4)分区的更成熟的实例,并使用它。我已经证明这是可行的。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.