问题现象
目录中创建文件提示本地空间不足,但是通过df -Th 发现本地目录下仍有剩余空间。
释义
在linux操作系统中,实际每个文件都是通过inode进行标识的。例如使用cat命令打开一个文件,对于使用cat filename方式打开的操作而言,实际一共经历过三个步骤,首先系统中维护一个inode table,每个文件都有与之对应的inode,先根据文件名称找到对应的Inode信息,然后将文件的详细信息存放进inode中。
根因分析
- 由于每个文件都必须要有一个inode,因此有可能发生inode已经用光,但是硬盘还是未存满的情况。这时,就无法在硬盘上创建新文件。
- 小字节缓存文件过多,虽然占用的块不多,但是占用了大量的inode,导致无法添加新数据。
处理方法
- 通过df -i查看目录下的inode数量,可以发现inode资源耗尽,所以才导致文件无法创建。
# df -i
- 进行问题处理的方式就是通过删除文件,释放inode资源即可。
因此在云主机的日常使用中,除了要监控目录本地空间资源外,还需要监控本地inode资源。
后续建议
因此在云主机日常使用中除了需要监控本地目录空间资源外,还需要监控本地inode资源。