Linux文件系统

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux文件系统相关的知识,希望对你有一定的参考价值。

ext2 作为索引式文件系统,一个文件占用一个inode,记录着文件的权限和属性,同时记录此文件的数据所在的block号码;

磁盘分区的好处:以mysql是数据目录为例,如果将数据目录单独放在一个分区,可以很大程度减少磁盘碎片,提高读写效率。

ext2文件系统在格式化后分成多个块组,每个块组都有独立的inode/block/superblock

inode 记录的信息:

文件的访问模式 r w x

文件的所有者和组

文件的大小

文件的创建或状态改变的时间 ctime

最近一次读取的时间actime

最近修改的时间mtime

定义文件特性的标志

文件真正内容的指向

 

每个inode大小固定为128bytes 每个文件都会占用一个inode 文件系统所能创建的文件数量与inode数量有关;系统读取文件时首先找到inode并分析inode所记录的权限与用户是否符合,符合才能开始实际读取b‘lock内容

 

inode记录block号码的区域定义为12个直接、一个间接、一个双间接、一个三间接 :假设block 为 1kB

12k + 256k+ 256*256k+ 256*256*256 = 16GB

除了第一个block group 含有superblock 之外,后续的block group 不一定含有superblock ,一个文件系统应该含有一个superblock,在一个文件系统中的其他superblock主要是作为备份

block bitmap 块对照表 记录block是否使用;当删除一个文件时就要在bitmap中找到该block号码,并将该block的标志修改为未使用

以上是关于Linux文件系统的主要内容,如果未能解决你的问题,请参考以下文章

Linux 文件系统管理

linux文件系统类型

linux系统中对文件系统的原理进行分析

Linux文件系统操作命令

linux kernel 文件系统编程接口

linux下啥文件系统支持超个4G的单个(重点)文件?