看到这个错误,第一个反应是磁盘空间满了;但
df 一看,每个分区的空间都还富余的很。从
munin的监控图表上看 Filesystem usage 也很平稳,但下面的 Inode usage 就有问题了,其中一个分区的 usage 已经到了100%。赶紧跑到服务器上 df -i 检查,果然是 Inode 耗尽。原来这个分区是用来扔各种日志和临时文件的,其中有某个程序产生的临时文件又小又多,又没有进行定时回滚,造成在磁盘空间耗尽之前文件系统的 Inode 就被用光了。
Linux/Unix like OS 的文件系统中每个目录树中的节点并不是像 Windows 那样直接包含文件的具体信息,而只包含了文件名和 Inode number 。通过 Inode number 所找到对应于文件名的 Inode 节点中才真正记录了文件的大小/物理地址/所有者/访问权限/时间戳/被硬链接的次数等实际的 metadata 。因此你可以在 Linux 系统中通过硬链接( hard link ) 的方式给某个文件创建无数个位于不同目录下的文件名,而实际的文件数据只需要一份拷贝。
但也正因为这种文件系统的结构,当你在 Linux 中进行 IO 操作的时候,需要的资源除了磁盘空间以外,还要有剩余的 Inode 才行。缺省情况下, Linux 在系统安装过程中按照1个 Inode 对应 2k 磁盘空间来计算每个分区的最大 Inode 数。一旦文件系统创建之后,每个分区可用 Inode 数就无法进行动态调整。
正常来说,一般不太会出现某个分区的 Inode 耗尽而磁盘空间尚余的情况,除非像我碰到的这样垃圾小文件疯长而又没进行有效的清理。但如果确实需要的话,可以在创建文件系统(比如用 mke2fs )的时候根据实际需要来调整这个参数(比如分区如果用于存放超大视频文件的话 Inode 的数量可以少一些;如果打算存放的文件是大量小于 2k 的迷你文件的话就要考虑多创建一些 Inode)。
附:Inode Definition by The Linux Information Project
其它人碰到的 No space left on device 原因:
超出系统中同时运行的最大 messagequeue 个数限制: 在 root 下用 sysctl kernel.msgmni 检查该参数, sysctl-wkernel.msgmni=XXX 重新设定即可。
cvs 异常断开的连接在 /tmp 目录下留下大量的临时文件导致 /tmp 目录满
分享到:
相关推荐
最近这两天登陆服务器,发现用 wget 下载文件的时候提示“No space left on device”,而且连使用 tab 键进行补全时也会提示该错误。 之前遇到过一次这种问题,是由于磁盘空间被占满了,导致无法创建新文件。正常...
解决docker报错Docker no space left on device
Ubuntu 18 Docker run出现no space left on device错误的解决.rar
报Docker no space left on device 如何解决?
我用的阿里云的CentOS服务器,用的nginx+apache,最近启动nginx报28:no space left on device的错误,就是磁盘满了 一:解决 1、使用命令:df -lk 发现果然有个磁盘已满 2、使用命令:du –max-depth=1 -h 查找大...
Linux下面接4个USB Camera 出现:VIDIOC_STREAMON: No space left on device,新patch解决了这个问题,欢迎下载!
[Fri Aug 15 10:54:31 2008] [emerg] (28)No space left on device: Couldn't create accept lockdf一下发现不是磁盘空间的问题。Google了一下就找到了解决方案,原来是系统的信号量(?)不够用了。
主要介绍了mysql启动失败不能正常启动并报错Can't start server: can't create PID file: No space left on device问题解决方法,需要的朋友可以参考下
主要介绍了linux No space left on device由索引节点(inode)爆满引发500问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
解决案例一: 今天公司服务器上所有的网站都出现问题,有的打开没有数据,有的直接是...打开log日志一看,问题出现了Can’t start server: can’t create PID file: No space left on device; df -h看了一下磁盘,500
[Fri May 20 18:07:23 2011] [crit] (28)No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed [Fri May 20 18:08:22 2011] [crit] (28)No space left on device: mod_...
perror 28 Error code 28: No space left on device SQL语句执行错误:SELECT title,gid FROM blog_blog WHERE date < 1246200383 and hide = ‘n’ and type=’blog’ ORDER BY date DESC LIMIT 1 Error writing...
最近有朋友说:Apache启动报错No space left on device: AH00023,是怎么回事,该怎么解决呢?经过小编的一番折腾,问题解决,下面把解决办法分享给大家,需要的朋友可以参考下
3D的unet CNN网络,用于3D图像的分割。效果还是不错的