寻找原因

从字面上理解,这个问题是说磁盘上没有多余的空间

那么到底是什么地方将空间?

  1. 先用df命令查看当前计算器磁盘空闲情况
df -a

我这边执行完后可以看到/dev/vda1被完全占用(找到对应的挂载点)

  1. 从挂载点目录下开始使用du命令查找出空间占用最大的文件
#查看当前目录下每个文件夹所占用的空间
du -sh *

通过一层一层的比较文件所占用空间,发现是jenkins的运行日志文件占用最大,本来我这边的的服务器磁盘仅100G,结果这个日志文件就有86G,我明白就是这个文件将磁盘占满了

解决方案

我首先想到的是直接删除该文件,于是我进入到jenkins的目录下,直接删除了所有日志。

rm -rf *.log

命令执行后,服务器的其他程序临时可以正常使用了。但是我运行df命令时发现/dev/vda1还是被完全占用,但是我想应用都正常在运行了,那也许是系统需要重启或过一段时间才能更新该状态,我也就没有再理会这个问题。

然而,这个问题并没有就此结束。第二天同事发现应用又不能访问了,我意识到昨天的那个问题还没有结束。我再次执行了dfdu命令,发现df的结果中表明/dev/vda1依然被全部占用,而du的结果中却没有再发现大文件了。我尝试着将解决这两种结果不一致的问题,兴许解决后就能解决”No space left o device”的问题了。

根据两个命令结果,我猜测应该是昨天直接通过rm命令删除的文件空间没有被释放,所以我查看了系统中所有被打开的文件,在其中寻找到了那个日志文件”jenkins.log”。

lsof | grep "jenkins.log"

列表中有很多进程都在打开该文件,虽然文件删除了,但是打开该文件的进程没有关闭,也就是说文件实际上还是存在,rm仅仅是删除了该文件的标记

于是乎我果断的终止了打开该文件的进程。

kill -9 22731

执行完毕后,再次运行dfdu,发现结果相差不大了。到此系统又可以正常运行了。

虽然这个问题算是临时解决了,但是jenkins的日志为什么可以达到86G?这个问题还没有得到解决,由于这一次删除的的充满,没有仔细看看日志的内容,导致该问题的原因不太能够查出。但是这个问题的根源肯定是没有被解决的,只能等到下一次该问题出现后,好好研究一下该日志,从根本上解决这个问题。

相关资料

  • centos 如何清理/dev/vda1系统盘
  • df与du的不一致的情况分析
  • losf命令说明

另参考:

linux已删除占用空间的文件了,为什么磁盘还是显示used 100%

https://blog.csdn.net/langhailove_2008/article/details/79501129

解决方案:No space left on device相关推荐

  1. pip安装ERROR: Could not install packages due to an OSError: [Errno 28] No space left on device解决方案

      大家好,我是爱编程的喵喵.双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中.从事机器学习以及相关的前后端开发工作.曾在阿里云.科大讯飞.CCF等比赛获得多次Top名次.现 ...

  2. php sem acquire,PHP | 关于php中sem_get failed for key no space left on device问题的解决方案...

    有时我们在处理并发操作时会使用信号量做进程同步,如下一个php应用的例子 $sem_id = sem_get($id,1,0666,true); sem_acquire($sem_id); ... s ...

  3. cannot create temp file for here-document: No space left on device解决方案

    文章目录 一.cannot create temp file for here-document: No space left on device 二.df 查看 Linux 空间使用情况 三丶使用 ...

  4. ceph osd 由于“No space left on device” 异常down,通过扩容文件系统或者显式运行osd进程解决

    文章目录 ceph版本: 环境配置: 异常问题: 问题解决: 总结 ceph版本: ceph 12.2.1 环境配置: tier_pool 16个分区大小800G 的osd容量 3副本 data_po ...

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

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

  6. dockerError processing tar file(exit status 1): no space left on device

    问题:空间不够 问题描述: Error processing tar file(exit status 1): no space left on device 解决方案: 查询默认路径为 /var/l ...

  7. Jenkins构建项目时报错“message“:“Error processing tar file(exit status 1): write/xxx/no space left on device

    文章目录 推荐文章 问题描述 原因分析: 解决方案: 1.查看磁盘占用情况 2.删除没有在用的镜像和容器 3.查找当前目录每个文件夹大小 推荐文章 Jenkins整合SpringCloud+GitLa ...

  8. linux-x86_64 error,Linux-x86_64 Error: 28: No space left on device问题

    操作系统版本: Linux 64位 数据库版本:任何版本 问题描述 修改数据库参数后启动数据库报错 SQL> startup nomount ORA-27102: out of memory L ...

  9. Could not install packages due to an EnvironmentError: [Errno 28] No space left on device

    Could not install packages due to an EnvironmentError: [Errno 28] No space left on device 1. 问题现象 安装 ...

最新文章

  1. ThreadLocal的正确使用与原理
  2. Ajax、jQuery基础入门视频教程
  3. SAP财务管控(财务总监背后的管理大师)
  4. GUN Make指南
  5. 函数的返回值-改造求和函数
  6. linux系统编程之进程(八):守护进程详解及创建,daemon()使用
  7. c# 之继承、封装、多态
  8. Linux基础——操作系统框架
  9. 2015-7-24 从新开始博客之路
  10. 项目团队管理 Atitit 职位的自动分配草案 attilax总结
  11. 深度解析脑机接口技术的现状与未来!
  12. [转]二阶巴特沃斯(Butterworth)滤波器
  13. Apache POI 读取、写入Excel文件教程
  14. MATLAB 2016b--神经网络工具箱中BP网络的实现
  15. 安卓手机远程连接linux系统,电脑(Linux/Windows)使用SSH远程登录安卓(Android)手机实现无线传输和管理文件(图文详解)-Go语言中文社区...
  16. 会议OA项目排座功能以及送审功能
  17. Comparative Molecular Analysis of Gastrointestinal Adenocarcinomas
  18. Studio 3T无法连接MongoDB异常错误 解决方法
  19. JavaScript RegExp 身份证、账号密码、email正则
  20. 【华为机试真题 Python实现】藏宝图

热门文章

  1. CanOpen and EtherCAT
  2. android 心跳包的分析
  3. JAVA简单的银行管理系统
  4. 读书笔记-《像高手一样发言》
  5. ceph kernel rbd (二): rbd map , rbd unmap
  6. 多种多样的Photoshop 的撤消命令
  7. 【分享】光纤光缆PPT
  8. C语言实验——整除 (sdut oj)
  9. cisaw是什么证书,cisaw证书有什么用?
  10. GSoC2011 主要入选方向