首页>>帮助中心>>Linux云服务器inode 耗尽导致应用故障

Linux云服务器inode 耗尽导致应用故障

2024/6/25 204次
Linux云服务器inode 耗尽导致应用故障

客户的一台 Oracle 数据库如武器在关机重启后,Oracle监听无法启动,提示报错 Linux error.No space left ondevice从输出信息看出来是因为磁盘耗尽导致监听无法启动,因为 Oracle在启动监听时需要创建监听日志文件,于是首先查看磁盘空间使用情况

# df -h

从磁盘输出信息可知,所有的分区磁盘空间都还有剩余不少,而 Oracle监听写日志的路径在 /ar 分区下,var 下分区空间足够。

解决思路:


既然错误提示语磁盘空间有关,那就深入研究关于磁盘空间的问题,在 inux系统中对磁盘空间的占用分为三个部分:第一个是物理磁盘空间,第二个是 inode节点所占用的磁盘空间,第三个是 linux用来存放信号量的空间,而平时接触较多的是物理磁盘空间,既然不是物理磁盘空间的问题,接着就检査是否是io0de 节点耗尽的问题通过执行命令“df -i" 查看可用的 inode节点。由输出结果看出确实是因为 inode 耗尽导致无法写入文件。


可以通过下面的命令查看某个磁盘分区 inode 的总数


# dumpe2fs -h /dev/sda3 |grep 'lnode count'


每个 inode 都有一个号码,操作系统用 inode号码来区分不同的文件,通过'ls -i命令可以查看文件名对应的inode号如果要查看这个文件更详细的 inode 信息,可以通过 stat命令来实现


# stat install.log


解决问题

# find /var/spool/clientmqueue/ -name “*” -exec rm -rf {} ;