ext4文件系统最基本的分配单元是“block”(块)。
block是由一组连续的sectors来组成,其大小介于1k~4K之间,当然不可能是任意值,只能是2的整数次幂个sectors。然后连续的blocks再组成group。Block的大小是在mkfs时指定的,默认是4K。
默认情况下,系统可以含有2^32个blocks,到那时如果开启“64bit”特性,可以支持2^64个blocks。
其相关指标见下图:
Item |
32-bit mode |
|||
1KiB |
2KiB |
4KiB |
64KiB |
|
Blocks |
2^32 |
2^32 |
2^32 |
2^32 |
Inodes |
2^32 |
2^32 |
2^32 |
2^32 |
File System Size |
4TiB |
8TiB |
16TiB |
256PiB |
Blocks Per Block Group |
8,192 |
16,384 |
32,768 |
524,288 |
Inodes Per Block Group |
8,192 |
16,384 |
32,768 |
524,288 |
Block Group Size |
8MiB |
32MiB |
128MiB |
32GiB |
Blocks Per File, Extents |
2^32 |
2^32 |
2^32 |
2^32 |
Blocks Per File, Block Maps |
16,843,020 |
134,480,396 |
1,074,791,436 |
4,398,314,962,956 |
File Size, Extents |
4TiB |
8TiB |
16TiB |
256TiB |
File Size, Block Maps |
16GiB |
256GiB |
4TiB |
256PiB |
注:一直未搞懂block size什么时候可以取到64K;
特性“64bit”开启后,(mkfs.ext4-O 64bit /dev/sdc)
Item |
64-bit mode |
|||
1KiB |
2KiB |
4KiB |
64KiB |
|
Blocks |
2^64 |
2^64 |
2^64 |
2^64 |
Inodes |
2^32 |
2^32 |
2^32 |
2^32 |
File System Size |
16ZiB |
32ZiB |
64ZiB |
1YiB |
Blocks Per Block Group |
8,192 |
16,384 |
32,768 |
524,288 |
Inodes Per Block Group |
8,192 |
16,384 |
32,768 |
524,288 |
Block Group Size |
8MiB |
32MiB |
128MiB |
32GiB |
Blocks Per File,Extents |
2^32 |
2^32 |
2^32 |
2^32 |
Blocks Per File,Block Maps |
16,843,020 |
134,480,396 |
1,074,791,436 |
4,398,314,962,956 |
File Size, Extents |
4TiB |
8TiB |
16TiB |
256TiB |
File Size, Block Maps |
16GiB |
256GiB |
4TiB |
256PiB |
注:一直未搞懂block size什么时候可以取到64K;
作者:Younger Liu
本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可。