故障描述:由于每个文件都必须要有一个inode ,因此有可能发生inode 已经用光,但是硬盘还是未存满的情况。这时,就无法在硬盘上创建新文件。 造成故障原因:小字节缓存文件过多,虽然占用的 block 不多,但是占用了大量的 inode,导致无法添加新数据。

模拟文件系统中文件数量耗尽故障 模拟 i 节点耗尽故障: (1)新建一个大小为 1G 的磁盘sdb ,格式化为.xfs类型,将其挂载到/data 目录下,并使用带 df -i 命令确认该文件系统中 i 节点的使用情况。 在这里插入图片描述

2)创建一个脚本程序,不停地复制文本,耗尽 /dev/sdb1 分区中所有可用的 i 节点(523773) 在这里插入图片描述

3)当i 节点耗尽之后,在该文件系统中再创建新文件时,就会出现“设备上没有空间”的错误假象,但是通过df 命令还可以看到该分区上实际上还有可利用的剩余空间,但是因为节点已经用完,所以无法创建新文件。 在这里插入图片描述 在这里插入图片描述4修复 i 节点耗尽故障 我们只需要找到该分区上占用大量 i 节点的细小文件,并对其进行转移或者删除即可,如果是许多用户公用的文件系统,建议为相关用户设置磁盘限额(包括文件数量、磁盘空间两方面)。 在这里插入图片描述