首先先要解释什么是inode?

inode在linux中,每个文件,不管大小是多少都会对应一个inode,inode就是一个专门用来保存文件属性,权限和指针(指向block)

inodex满了会导致什么问题?

首先,在linux中,有两个概念,就是block和inode,block:用于存放实际数据,inode:存放文件属性,只要这两个其中一个占满空间了,都会导致提示报错“磁盘空间不足”

**inodex故障模拟

某年某月某日某时,某人在工作中设置crontab定时任务规则保存时,提示“No space left on device”,此时用df -h检查磁盘,发现还有剩余空间.请问是什么原因及如何排查?什么会导致这种事情发生

1.模拟测试环境
系统:centos 7.4,磁盘空间8G,CPU 4核,内存4G(最好给大点,创建文件需要大内存)

[root@xmh ~]# mkdir /test
[root@xmh ~]# echo /test/{1..6000000}.txt |xargs touch #创建的文件太多了,只能用这种方式创建

2.进入正题

#1.当进入编辑cronta或者创建文件时,直接报错,提示磁盘空间不足
[root@xmh ~]# crontab -e
/tmp/crontab.MApBTV: No space left on device
[root@xmh ~]# touch xmh.txt
touch: cannot touch ‘xmh.txt’: No space left on device2.查看磁盘空间
[root@xmh ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       8.0G  3.2G  4.9G  39% /      ##可以发现磁盘容量是空闲很多的
devtmpfs        1.7G     0  1.7G   0% /dev
tmpfs           1.7G     0  1.7G   0% /dev/shm
tmpfs           1.7G  8.7M  1.7G   1% /run
tmpfs           1.7G     0  1.7G   0% /sys/fs/cgroup
tmpfs           332M     0  332M   0% /run/user/03.查看inode空间
[root@xmh ~]# df -i
Filesystem      Inodes   IUsed  IFree IUse% Mounted on
/dev/sda1      4193792 4193792      0  100% /       #但是inode空间已满了
devtmpfs        422466     395 422071    1% /dev
tmpfs           424923       1 424922    1% /dev/shm
tmpfs           424923     473 424450    1% /run
tmpfs           424923      16 424907    1% /sys/fs/cgroup
tmpfs           424923       1 424922    1% /run/user/0提示:当磁盘容量或inode容量任意一个不足时就都会提示No space left on device

3.解决办法
使用find命令查找大于10M的目录,可以从df -i看出是在 根 /下容量不足,那么我们就从 / 下开始排查

[root@xmh ~]# find / -type d  -size +10M |xargs  ls -lhd  #find查找
drwxr-xr-x. 2 root root 97M Feb 15 14:00 /test[root@xmh ~]# ls /test/ |wc -l  #对该目录文件数量统计
4168011#定位好目录后删除小文件
[root@xmh /]# rm -rf /test/*  #直接 rm -rf * 的话是删除不了大量的小文件
-bash: /usr/bin/rm: Argument list too long[root@xmh /]# cd /test/
[root@xmh test]# ls |xargs rm -f#删除大量的小文件,使用该命令删除
[root@xmh /]# ls /test/ |wc -l #小文件已经删除了#再次查看inode容量
[root@xmh ~]# df -i
Filesystem      Inodes IUsed   IFree IUse% Mounted on
/dev/sda1      4193792 25973 4167819    1% /    #inode容量已恢复正常
devtmpfs        422466   395  422071    1% /dev
tmpfs           424923     1  424922    1% /dev/shm
tmpfs           424923   473  424450    1% /run
tmpfs           424923    16  424907    1% /sys/fs/cgroup
tmpfs           424923     1  424922    1% /run/user/0#删除小文件所在的目录(删除时注意记录该目录的所属用户和权限)
[root@jason /]# rm -rf /test/

转载于:https://blog.51cto.com/12643266/2352355

No space left on device 磁盘空间提示不足解决办法相关推荐

  1. 4T硬盘剩余很多提示“No space left on device“磁盘空间不足

    在linux中,硬盘有两个概念,就是block和inode block:用于存放实际数据 ,实际占用空间用 df -h 查看 inode:存放文件属性 ,实际占用的节点用 df -i 查看 只要这两个 ...

  2. Linux磁盘空间使用率100%解决办法

    Linux磁盘空间使用率100%解决办法 磁盘空间使用率很高的解决办法 事情发生的原因 方法一:删除未被进程引用的大文件. 方法二:删除被磁盘引用的大文件 总结 磁盘空间使用率很高的解决办法 事情发生 ...

  3. 使用硬盘空间少的linux系统,linux磁盘空间不足的解决办法

    一些linux系统电脑用户在使用一些应用程序的时候,会被提醒:磁盘空间不足的问题,因此,就有网友想知道:linux查看磁盘空间的方法,以及linux磁盘空间不足的原因和解决方法.下面,就一起来看看今天 ...

  4. Linux No space left on device 磁盘空间不足

    磁盘空间不足场景: linux 进入某个目录 命令,cd /+tab,使用tab自动补全目录时,报错了: [root@host-* ~]# cd /-bash: cannot create temp ...

  5. 虚拟机linux磁盘空间不足的解决办法

    今天用ssh登陆sqlplus时,报了下面磁盘空间不足的错误: [oracle@orcl ~]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0 - ...

  6. Docker磁盘空间满的解决办法

    今天在服务器上基于docker容器搭建mysql主从时,然后重启docker,发现容器启动不了了,报的错误是:"ERROR:cannot  create temporary director ...

  7. 磁盘空间不足的解决办法

    先说一下用于磁盘空间快满时检查 很多小伙伴会想到find  ,这个想法是好的,不过find 有点慢,也不方便,例如: find /home1 -type f -size +1000000k 如果我们这 ...

  8. /dev/sr0 3.7G 3.7G 0 100% /media/CentOS_6.8_Final no space left on device磁盘空间不足处理

    查看所有空间文件所占的空间大小 [root@Hadoop modules]# du -sh /* 7.3M    /bin 64M    /boot 304K    /dev 40M    /etc ...

  9. word显示计算机没有内存不足,Word提示内存或磁盘空间不足【解决方法】

    类型:安卓软件 大小:12.9MB 语言:简体中文 Word提示内存或磁盘空间不足原因 近期很多用户打开Word系统会提示我们内存或磁盘空间不足,其实这并非是我们电脑硬件或者系统的问题,而是Word文 ...

最新文章

  1. Java项目:学生信息管理系统(java+SSM+jsp+mysql+maven)
  2. 技术图文:进一步完善自动化交易系统 - 04
  3. angular 如何在index html 页面包含子页面_Webpack4.0各个击破(1)html篇
  4. 安卓下的免费离线地图导航软件(老虎地图)测试及网盘下载
  5. Linux 每日一练习!!反单引号·(键盘上数字1左边)··
  6. python 发邮件 timeout_Python邮件发送/带附件发送
  7. Problem C: 结构体---点坐标结构体
  8. 错误:未启用当前数据库的SQL Server Service Broker,因此查询通知不受支持。如果希望使用通知,请为此数据库启用 Service Broker。...
  9. Quartus II调用modelsim ALTEA 的软件使用及问题
  10. Webservice 安全性访问
  11. cisco端口排错步骤
  12. 自主创新战略下的技术创新之道
  13. 《深入浅出统计学》笔记
  14. TerraSolid工具试用系列----TerraSolid系列点云处理软件安装备注
  15. Docker安装filebeat
  16. Cheat Engine逆向修改植物大战僵尸(外挂)
  17. 美团实习经验(基础架构部)
  18. 【音视频处理】码率、帧率越高越清晰?分辨率、像素、dpi之间是什么关系?码率的真实作用,I帧、B帧、P帧是什么
  19. Vue--Router--路由传参的方法
  20. 华为交换机配置端口隔离

热门文章

  1. 作业五之系统设计时所实现的质量属性战术
  2. Java转C#的最佳工具
  3. 活动目录AD 取用户过期时间accountExpires
  4. 四、处理表单数据 (基础教程4)
  5. SSRF攻击实例解析
  6. 经济学的思维方式二 效率 交换与比较优势
  7. 金笛JDMail邮件服务器帮你应付电子邮件归档危机
  8. Selenium2.0 获取隐藏元素的内容
  9. Ubuntu8.10下迁移SVN版本库到新增的SAS硬盘
  10. MFC程序打包为安装文件方法