首页 > 编程知识 正文

ext3转ext4,ext3文件系统详解

时间:2023-05-03 22:06:01 阅读:112667 作者:523

Linux上的传统磁盘文件系统(filesystem )使用ext2,因此必须从ext2开始才能了解文件系统。

一、文件系统特性

为了使操作系统能够使用此分区,必须对磁盘的分区进行格式化。

这是因为每个操作系统设置的文件属性/文件权限不同。

为了在这些文件中存储所需的数据,必须对分区进行格式化,使其成为操作系统可用的文件系统格式。 在传统的磁盘和文件系统APP应用程序中,一个分区只能格式化为一个文件系统,因此一个文件系统可以说是一个分区。

除了文件内容外,操作系统文件数据通常还具有非常多的属性。 Linux文件权限(rwx )和文件属性(所有者、组、时间参数等)。 文件系统通常将这两个数据存储在单独的块中,权限和属性存储在inode中,实际数据存储在data block块中。 另一个“超块”(super block )记录整个文件系统的整体信息,包括索引节点和块的总量、使用量、剩馀量、文件系统格式和相关信息。

inode:记录文件的属性,一个文件占用一个inode,同事记录包含文件数据的block编号。

block:实际上记录文件的内容,如果文件太大,则会占用多个block。

因为inode和block都有编号,所以每个文件都占用inode,并且inode中有包含文件数据的block编号。 因此,如果找到文件的inode,则自然地知道该文件所在的数据的块编号,并且该文件的实际数据可以独立。

例如,假设某个文件的权限和属性数据位于inode 4下(颜色人生),该inode记录了文件数据的实际放置点为2、7、13、15的4个块编号。 此时,我们的操作系统可以据此排列磁盘读取顺序,一口气读取四个块的内容。

图片. png

二. Linux系统的ext2文件系统

文件系统从一开始就计划inode和block,并在inode和block固定后保持不变,除非重新格式化,或者使用resize2fs命令调整文件系统的大小。 为了便于管理,ext2文件系统在格式化时基本上分为多个块组。 每个块组都有独立的inode/block/super block系统。

图片. png

引导扇区位于文件系统的开头。 您可以在此引导扇区上安装移动加载器。 这样,您就可以在单个文件系统的开头安装各种引导装载器,从而创建多引导环境,而不必复盖整个硬盘上唯一的MBR。

数据块

文件内容的位置为ext2文件系统支持的block大小为1KB、2KB和4KB,并且在格式化时大小是固定的。 每个block中最多只能包含一个文件的数据。 如果一个文件大于一个块的大小,则一个文件占用多个块的数量;如果文件小于块,则ext2文件系统受该块的剩馀块大小的限制:

图片. png

inodetable () table表() ) ) ) ) ) ) )。

inode记录的文件数据至少包括:

此文件的访问模式: (rwx )

2 )此文件的所有者和组(ower/group )。

3 )此文件的大小

4 )该文件的创建或状态发生变化的时间(ctime ) ) ) ) ) ) ) )。

5 )最近阅读的时间(atime ) )。

6 )最近修改的时间(mtime ) )。

7 )此文件特征的标志(flag ) )。

8 )此文件的真实内容点(pointer ) )。

此外,这种强大的inode的大小每128B固定一次。

inode除了文件权限属性记录区域外,还包括12个直接、1个间接、1个双重间接和1个三间接记录区域。 指向12个直接号码的比对,这12个记录可以直接获得块号码。 间接是指具有另一块作为块编号的记录区域。 如果文件太大,则使用间接块记录编号。 同样,当文件持续变大时,复用所谓的双重间接,首先只示出下一个记录编号的块在哪里,实际上记录在第二个块中。 这样,第三间接是复用第三层块来记录号码。

图片. png

超级封阻

Super block非常重要。 因为文件系统的基本信息写在这里,所以一个文件系统应该只有一个Super block。 记录的信息主要包括:

1、区块和节点总量;

2、未使用和已使用的inode、块数;

3、块和节点大小;

4、文件系统相关信息,如文件系统挂载时间、上次写入数据的时间、上次检查磁盘的时间等;

5、可变位的值。 如果已挂载文件系统,则valid位为0;如果未挂载,则valid位为1;

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。