linux inode 满,导致系统无法写入文件
今天,朋友让帮忙看一个服务器问题,站点打不开,表象,502, 这个友好提示并不能说明神马问题,果断先看日志

1.检查日志
环境,使用了 wdcp环境,nginx 代理给后端的Apache去处理,nginx工作正常,Apache无法启动,怪哉

此处必有蹊跷,提示,设备空间已满
2.检查设备空间使用情况

磁盘物理空间并未使用满
3.检查 inode
恶补一下,iNode知识:
inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。
每个inode节点的大小,一般是128字节或256字节。inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode。
# dumpe2fs -h /dev/sdb1 | grep "Inode size" #查看设备inode

由于每个文件都必须有一个inode,因此有可能发生inode已经用光,但是硬盘还未存满的情况。这时,就无法在硬盘上创建新文件
检查服务器设备 iNode 使用情况
#df -i #查看inode 使用情况

由此看来,inode 存储空间已满,导致 Apache pid 文件无法创建服务器无法启动
4.解决方法
删除没用的空文件,备份文件可以移动到其他盘,清掉一些,缓存文件,释放一些inode 否则空间无法使用
清理过,然后在看 inode 使用率

然后再启动服务,就ok 了
阅读(3639) | 评论(0) | 转发(0) |