Linux故障排查 inode耗尽导致应用故障

3年前 (2015-10-01) admin linux 0评论 已收录 962℃
    1.错误现象
     inode耗尽导致应用故障
    oracle在光机重启后,Oracle监听无法启动,提示错误:
    TNS-12549: TNSperating system resource quota exceeded
    TNS-12560:  TNSrotocol adapter error
    TNS-00519:  Operating system resource quota exceeded
    Linux Error: 28: No space left on device
                          inode耗尽故障现象
    从输出信息判断,应该是磁盘空间耗尽导致Oracle坚挺无法启懂,因为Oracle在启动监听时需要创建坚挺日志文件,
    而上面三个TNS错误产生的原因都是由最后一行错误导致的,于是首先检查系统磁盘空间。
    -->df -h
        从磁盘输出信息可知,所有分区磁盘空间还有不少剩余,而Oracle监听写日志的路径在/var分区下,虽然/var仅剩下3.2GB
    可用磁盘空间,但是这对于写一个监听日志来说已经足够了,为什么换提示空间不足?
    2.解决思路:
        在Linux系统中,对磁盘空间的占用分为三个部分:
第一:物理磁盘空间
第二:inode节点所占用的磁盘空间
第三:Linux用来存放信号量的空间
。检查inode节点是否耗尽
-->df -i
        Filesystem       Inodes       IUsed       IFree       IUse%        Mounted on
/dev/sad3        524736       5244736     0           100%         /var
由输出可知,果然是inode节点耗尽导致无法写日志文件,但是文件系统已经无法再记录这些空余空间了,因此,
    也就不能再创建新文件或文件夹了。
        在Linux系统中,文件由数据块和源数据组成,数据块就是多个连续的扇区,是文件存取的最小单位
    块(block)的大小,最常见创建的是4KB,即连续8个sector组成一个block。而元数据用来记录文件的创建者、文件的创建日期,
    文件的大小等,这种存储文件源数据信息的区域就叫做inode,或者称为"索引节点"
        由于inode也是用来存储文件相关属性信息的,因此inode也会消耗硬盘空间,在硬盘格式化的时候,操作系统会自动将硬盘
    分成两个区域。一个是数据区,存放文件数据。另一个是inode区(inode table),存放inode所包含的信息。

 

博主

让学习成为习惯,坚持-共享-开源-自由! 成功者决不放弃,放弃者绝不成功!

相关推荐

嗨、骚年、快来消灭0回复。