【Linux实验室】测试ext4文件系统的最大inode数量
实验目的
1、熟悉inode的定义与作用
2、熟悉Linux文件系统类型
3、测试ext4文件系统的最大inode数量
实验环境
centos7.10 64-bit
实验原理
inode定义
安装操作系统或格式化磁盘分区的时候,操作系统会自动把磁盘分区分为两个区域 : Block存储区 和 inodes 存储区。
Block存储区主要存储文件的内容,inodes存储区是由许多的inode组成的列表,每个 inode 中存储 文件元信息(文件大小,创建者,创建时间等)
inode 是一种数据结构,用来存储文件以下的信息:
1、文件大小
2、文件类型(常规文件、目录、软连接等)
3、权限(读写执行权限)
4、属主(所属用户)
5、属组(所属用户组)
6、链接数(有多少个文件名指向这个inode)
7、文件创建时间
8、文件最近访问时间
9、文件最近修改时间
10、文件内容所在Block位置
inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。
实验步骤
一、用VMware给虚拟机添加一块2GB的虚拟硬盘
(无脑下一步设置)
二、连接虚拟机,使用fdisk命令给磁盘sdb分区,建议分50Mb给sdb1
以下是实验代码
fdisk /dev/sdb
#设置完成后格式化sdb1
mkfs.ext4 /dev/sdb1
mkdir /shiyan
#挂载sdb1
mount /dev/sdb1 /shiyan
三、进入实验文件夹,查看inode最大数量,并创建文件。
cd /shiyan
df -i
touch file{1..12813}
#脚本创建1270个文件,占满所有的inode号
尝试添加一个文件:
touch a11
发现无法创建。
实验结论:
一个分区能够创建多少个空文件,除了取决于它的容量之外,还和它所拥有的inode号息息相关,inode号的数量决定文件的最大数量上限。