在 Linux 中将 ext3 转换为 ext4
与前身 ext3 相比,ext4 文件系统在性能方面进行了多项改进。 Ext4 不仅比 ext3 更快,而且还可以处理更大的文件系统和文件,以及许多其他底层改进。如果您尚未在 Linux 上升级到 ext4,那么现在绝对是时候升级了。
在本教程中,我们将逐步介绍将 ext3 文件系统转换为 ext4,从而启用一些 ext4 性能增强功能。按照以下步骤将 ext3 转换为 ext4,而不会丢失数据。
在本教程中您将学习:
如何从 ext3 升级到 ext4 文件系统
将 ext3 转换为 ext4
警告
在继续之前,请注意,将 ext3 分区转换为 ext4 文件系统后,您将无法再将该分区挂载为 ext3。此外,如果您要转换为 ext4 的 ext3 分区在引导加载过程中被 Grub 使用,请确保 Grub 加载程序能够使用 ext4 文件系统进行引导。
第一步是……备份!在转换过程中不应该出现任何问题,但是如果在修改文件系统之前避免进行备份,那就太疏忽了。
在我们的示例场景中,我们将使用现有的
/dev/sdb1
分区,该分区使用 ext3 文件系统进行格式化。这是我们的 ext3 安装分区:# mount | grep sdb1 /dev/sdb1 on /mnt/temp type ext3 (rw,relatime,errors=continue,user_xattr,acl,barrier=1,data=ordered)
确保在继续之前卸载 ext3 分区:
# umount /mnt/temp/
修改 ext3 文件系统以包含 ext4 功能:
# tune2fs -O extents,uninit_bg,dir_index /dev/sdb1
如果成功,您不会从上面的命令收到太多输出。该命令完成后,优化和修复文件系统目录并使用以下命令强制进行文件系统检查:
# e2fsck -fD /dev/sdb1 e2fsck 1.45.5 (07-Jan-2020) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 3A: Optimizing directories Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/sdb1: ***** FILE SYSTEM WAS MODIFIED ***** /dev/sdb1: 12/54216 files (0.0% non-contiguous), 12765/216060 blocks
现在,我们可以测试挂载新的 ext4 文件系统:
# mount /dev/sdb1 /mnt/temp/ # mount | grep sdb1 /dev/sdb1 on /mnt/temp type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
全做完了。我们已成功将 ext3 文件系统转换为 ext4。
结束语
在本教程中,我们了解了如何使用 Linux 命令将 ext3 文件系统转换为 ext4。安装新文件系统后,您将能够享受 ext4 的所有功能,这些功能主要归结为性能的急剧提高。享受!