Linux 文件系统:Ext2 和 Ext3 和 Ext4

网友投稿 1886 2022-05-28

ext2、ext3 和 ext4 都是为 linux 创建的文件系统。本文解释了以下内容:

这些文件系统之间的高级差异。

Linux 文件系统:Ext2 和 Ext3 和 Ext4

如何创建这些文件系统。

如何从一种文件系统类型转换为另一种。

EXT2

Ext2 代表第二个扩展文件系统。

它于 1993 年推出。由 Rémy Card 开发。

这是为了克服原始 ext 文件系统的限制而开发的。

Ext2 没有日志功能。

在闪存驱动器、USB 驱动器上,建议使用 ext2,因为它不需要做日志的开销。

最大单个文件大小可以从 16 GB 到 2 TB

整体 ext2 文件系统大小可以从 2 TB 到 32 TB

EXT3

Ext3 代表第三个扩展文件系统。

它于 2001 年推出。由 Stephen Tweedie 开发。

从 Linux Kernel 2.4.15 开始,ext3 可用。

ext3 的主要好处是它允许记录日志。

日志在文件系统中有一个专用区域,用于跟踪所有更改。当系统崩溃时,由于日志,文件系统损坏的可能性较小。

最大单个文件大小可以从 16 GB 到 2 TB

整体 ext3 文件系统大小可以从 2 TB 到 32 TB

ext3 文件系统中提供了三种类型的日志。

日记 – 元数据和内容保存在日记中。

有序 – 只有元数据保存在日志中。只有在将内容写入磁盘后才会记录元数据。这是默认设置。

回写 – 只有元数据保存在日志中。元数据可以在内容写入磁盘之前或之后记录。

您可以直接将 ext2 文件系统转换为 ext3 文件系统(无需备份/恢复)。

分机4

Ext4 代表第四个扩展文件系统。

它于 2008 年推出。

从 Linux Kernel 2.6.19 开始,ext4 可用。

支持巨大的单个文件大小和整体文件系统大小。

最大单个文件大小可以从 16 GB 到 16 TB

总体最大 ext4 文件系统大小为 1 EB(艾字节)。1 EB = 1024 PB(拍字节)。1 PB = 1024 TB(太字节)。

目录最多可以包含 64,000 个子目录(相对于 ext3 中的 32,000 个)

您还可以将现有的 ext3 fs 挂载为 ext4 fs(无需升级)。

ext4 中还引入了其他几个新特性:多块分配、延迟分配、日志校验和。fast fsck 等。您需要知道的是,与 ext3 相比,这些新功能提高了文件系统的性能和可靠性。

在 ext4 中,您还可以选择“关闭”日志功能。

使用我们之前讨论的方法来确定您是否拥有 ext2 或 ext3 或 ext4 文件系统。

警告:如果您不知道自己在做什么,请不要执行下面给出的任何命令。您将丢失数据!

创建 ext2、ext3 或 ext4 文件系统

使用fdisk 命令对硬盘进行分区后,使用 mke2fs 创建 ext2、ext3 或 ext4 文件系统。

创建 ext2 文件系统:

mke2fs /dev/sda1

创建 ext3 文件系统:

mkfs.ext3 /dev/sda1 (or) mke2fs –j /dev/sda1

创建一个 ext4 文件系统:

mkfs.ext4 /dev/sda1 (or) mke2fs -t ext4 /dev/sda1

将 ext2 转换为 ext3

例如,如果您要将挂载为 /home 的 /dev/sda2 从 ext2 升级到 ext3,请执行以下操作。

umount /dev/sda2 tune2fs -j /dev/sda2 mount /dev/sda2 /home

注意:你真的不需要卸载和挂载它,因为 ext2 到 ext3 的转换可以在实时文件系统上发生。但是,我感觉更好地进行离线转换。

将 ext3 转换为 ext4

如果您要将挂载为 /home 的 /dev/sda2 从 ext3 升级到 ext4,请执行以下操作。

umount /dev/sda2 tune2fs -O extents,uninit_bg,dir_index /dev/sda2 e2fsck -pf /dev/sda2 mount /dev/sda2 /home

再次,仅在测试系统上尝试所有上述命令,您可以承受丢失所有数据。

Linux

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【高并发】在高并发环境下该如何构建应用级缓存?
下一篇:Linux开发_Makefile规则与Shell脚本语言
相关文章