如何将实时根 ext3 文件系统转换为 ext4?

如何将实时根 ext3 文件系统转换为 ext4?

我有一个实时且已挂载的根文件系统,我想将其转换为 ext4。我读过的所有操作指南都涉及从实时 CD 启动,但这不是选项。

答案1

看来我原来的帖子完全错了。你在挂载 ext3fs 分区时将其转换为 ext4fs 分区,因为转换过程实际上不会更改之前写入使用扩展的文件。这在ext4 操作指南以及为什么你不该尝试这么做的所有原因:

  • 现有文件均未转换,因此您不会获得任何性能提升(并且根据每个分发说明,有些内核在处理这些导入的文件时有 bug)
  • 您需要有一个支持 ext4 的引导加载程序,如果没有,您将不会知道,直到它停止引导(因为文件在转换期间没有改变,引导加载程序仍然能够找到它,直到文件被替换或移动)。
  • 如果您的内核没有内置 ext4,那么您必须确保您的 initrd/initramdisk 具有相应的模块。
  • 您需要更新所有 fstab 和内核启动参数以显示文件系统是 ext4,因为它将不再作为 ext3 安装。
  • 必须重新启动系统
  • 分区在重启后将需要进行 fsck(使用能够识别 ext4 的 fsck 版本)

该操作指南还列出了每个发行版所需的一些更改,以便您可以确定要安装哪些软件包的正确版本。

如果不能从 LiveCD 启动,我推测这是一个远程托管服务器,您不能直接去从 CD 启动。如果上述方法之一失败,重新启动后它没有恢复,您将如何处理它?fsck 根分区需要多长时间,这样您就知道在开始担心之前需要等待多长时间,以及您开始紧张之前还需要等待多长时间?

否则,如果你确信你已经做对了所有事情,并且所有设置都正确,那么只需运行

tune2fs -O extents,uninit_bg,dir_index /dev/partitiondevice
shutdown -r now

答案2

您不能简单地在 ext3 和 ext4 之间进行转换...但是,您可以通过删除或添加日志并重新安装文件系统在 ext3 和 ext2 之间进行转换。在安装时选择所需的文件系统格式始终是最好的做法,因为以后更改它并不总是一种选择。

答案3

一个选项是更改 fstab 文件以指定将其挂载为 ext4 分区,这将允许您利用 ext4 的一些功能。这将需要重新启动。

在文件系统安装时,您无法真正更改它。如果它不是系统驱动器,您可能能够卸载它,然后按照与使用实时 CD 时类似的步骤进行操作,但这取决于您的设置。

一般来说,如果您无法承受停机时间,您就不会做这样的事情,在 99% 的情况下,这都是潜在的危险和不必要的。ext3 非常可靠,我可以放心地将我的数据存储在其上多年。

记得先做一个完整备份:)

相关内容