admin管理员组文章数量:1621133
现象:df -h显示硬盘还有14G空间,但是touch file/mkdir directory都失败,提示硬盘没有空间
原因:df -ia查看下inode的使用情况,发现已经爆了,(下图显示使用88%,还没有用完)
那么,inode究竟是什么?为什么它使用完,就不能创建文件和文件夹了?
解释:文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。
操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。
文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。
每一个文件都有对应的inode,里面包含了与该文件有关的一些信息
可以使用stat命令查看inode的信息:stat example.txt
另外,单个目录下子目录的数量也是有限制的
统计目录inode占用数目:
find */ ! -type l | cut -d / -f 1 | uniq -c
find */ -exec stat -c "%n %i" {} \;|awk -F "[/ ]" '{if(! a[$1-$NF]++) l[$1]++}END{for (i in l) print i,l[i]}'
参考:
1、http://www.ruanyifeng/blog/2011/12/inode.html
2、https://www.jianshu/p/6978bddd69af
3、http://blog.51cto/13520924/2092364
4、https://blog.csdn/lidan3959/article/details/16981137
版权声明:本文标题:为什么硬盘明明还有空间,linux却说硬盘空间不足?inode;mkdir: 无法创建目录"shen1": 设备上没有空间 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1728833204a1175832.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论