Linux Inode 耗尽 no space

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux Inode 耗尽 no space相关的知识,希望对你有一定的参考价值。

   关于Inode一个应用的案例就是创建文件的时候发现没有足够的空间,通过df查看呢发现实际上Used只有20%,这里也是为什么du和df查看同样一个磁盘的时候发现大小不一致(自己可以试一下肯定不一致)

首先inode耗尽差生肯定是inode表没有空闲了,怎么解决???

find ./ -name "*.log*" |xargs -L rm可以删除,如果小文件太多可能会报错arglist too long

find ./ -name "*.log*" -exec rm -rf {} \;也可以删除,都是讲删除的文件一个一个做为参数传递

还有就是如果想不格式化硬盘(mkfs)可以删掉一部分之后重新指定连接到别的文件系统

ln -s /newcache /opt/newcache 这样访问就是使用新的文件系统的i节点

如果涉及前期考虑到硬盘存放的数据的大小,可以考虑以下两点:
如果有很多个小文件,在创建硬盘的时候可以调整Block小一点。
如果文件特别大,比如视频之类的,可以调整Block大一些。
如何增加Inode的数量只能umount文件系统,然后重新mkfs
mkfs ext3 /dev/sda1 [-N number-of-inodes ]直接指定需要的Inode数目
或者mkfs ext3 /dev/sda1 [-i bytes-per-inode]
inode数量如何计算:一般是硬盘大小/Block(即一个扇区)


以上是关于Linux Inode 耗尽 no space的主要内容,如果未能解决你的问题,请参考以下文章

生产环境下案例 No space left on device (inode使用满的情况)

请描述工作中解决的故障(写入数据出现 no space left on device 故障)

linux no space left on device的解决的方法(iNode满导致)

Linux索引节点(Inode:no space for device)用满导致的一次故障

如何解决linux报No space left on device错误

使用 docker 时遇到 no space left on device 问题的解决