我们的集成环境如果磁盘空间满,一般情况下可以通过删除log或者多余的文件来解决,但有时候,这种方法是无法解决的。以上次碰到情况为例:

服务器10.2.5.4磁盘空间满,致使某核心无法正常运行。于是登陆核查,如下:
# df -h
文件系统              容量  已用 可用 已用% 挂载点
/dev/sda2 9.7G 7.0G 2.3G 76% /
/dev/sda1 251M 19M 219M 8% /boot
/dev/sda5 54G 24G 28G 100% /home
none 1004M 0 1004M 0% /dev/shm
ccvob.alipay.net:/ccvob1
133G 68G 59G 54% /ccvob1
10.2.4.98:/home/nfsshare
225G 145G 69G 68% /share/upload

进入/home目录使用du查看/home下的磁盘使用率
# cd /home
# du -sh *
3.1M admin
1.3G ctu
1.2G godzilla
76K log
40K nagios
609M paygw
784M smsgw
20G trade
24K ukulele

发现目录home目录下的子目录所有文件大小加起来远远少于54G,可是却提示home已经100%占用。这种干扰du查看磁盘空间使用率的问题,一般是下面两种情况造成的:
 1、用户删除了文件,这些删除的文件使用du无法查看,但系统仍然有进程在写被删除的文件。
 2、磁盘分区的某一个目录挂载了另外一个分区时,du查看到的磁盘空间为挂载分区后的目录空间。
由于home目录未挂载另一分区,所以应该是用户删除系统的日志文件,而系统java进程没被停掉这一情况造成的。

解决方法:
1、查找被删除文件
 被删除文件,在写程序未退出的情况下,被删除文件同样会占用磁盘空间。
# lsof -n | head -1
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
# lsof -n /home | grep deleted

由上面可以看出,这些log已经被删除,但是java进程依然在写这些log。

2、杀掉写文件的java进程,磁盘空间会自然释放
#pkill -9 19543
# df
文件系统               1K-块        已用     可用 已用% 挂载点
/dev/sda2 10080520 7257740 2310712 76% /
/dev/sda1 256667 19223 224192 8% /boot
/dev/sda5 56087900 25093392 28145384 45% /home

总结:由于我们经常在没有停掉系统的时候就直接删除log,而有时候系统的java进程在重新启动的时候并没有停掉,依然在系统中运行并不停的在写已经被删除的日志文件,多次累积过后,就会造成磁盘空间变满。所以,建议每次删除系统log前,请执行下#killall java 先将该用户下的系统停掉

转载于:https://www.cnblogs.com/s1328/p/4885334.html

系统磁盘空间满的一个问题相关推荐

  1. java 写文件 异常 磁盘空间满_系统磁盘空间满的一个问题

    我们的集成环境如果磁盘空间满,一般情况下可以通过删除log或者多余的文件来解决,但有时候,这种方法是无法解决的.以上次碰到情况为例: 服务器10.2.5.4磁盘空间满,致使某核心无法正常运行.于是登陆 ...

  2. No space left on device 解决Linux系统磁盘空间满的办法

    No space left on device 原因是磁盘空间满了 1.查看是否存在未被清除句柄的僵尸文件.这些文件实际上已经被删除,但是有服务程序在使用这些文件,导致这些文件一直被占用,无法释放磁盘 ...

  3. No space left on device 解决Linux系统磁盘空间满的办法

    最近Linux电脑在执行mvn时候总是报错: No space left on device   原因是磁盘空间满了,我马上加了20G的硬盘容量,但是还是报错,上网查了一下,发现了解决方法,我用了其中 ...

  4. ubuntu系统使用docker gitlab 磁盘空间满问题解决记录

    问题 发现git上传不了,登录服务器,table补齐命令都报错,发现根目录磁盘使用率100% 解决问题 问题排查: 1.使用排查docker使用空间 docker system df 未见异常 2.清 ...

  5. Linux系统下提示磁盘空间满,但实际占用却很小

    Linux系统下提示磁盘空间满,但实际占用却很小 因为公司放在测试服务器上的服务比较多,磁盘经常性会满.以前满过几次,因为时间比较赶,每次只是草率的删掉一点log或者临时文件,到今天早上又发生一起事故 ...

  6. Linux通过df命令查看显示磁盘空间满,但实际未占用问题

    问题产生:让同事查看挂载点 "/"占用100%的原因,查看之后发现是/home/work/下的一个日志文件太大占用导致,然后同事就直接执行了rm命令,结果导致文件删了,但是挂载点占 ...

  7. 磁盘空间满问题排查方法

    问题描述 在云服务器ECS Linux系统内创建文件时,出现类似如下空间不足提示: No space left on device - 问题原因 磁盘分区空间使用率达到百分之百. 磁盘分区inode使 ...

  8. idea 报系统分区磁盘不足_磁盘空间不足—win7系统磁盘空间不足巧妙解决

    很多朋友经常使用电脑的时候会遇到磁盘空间不足的问题,这就意味着该磁盘空间已容纳不下您所需存放的资料.在不知情下,使用迅雷下载.U盘拷贝到空间不足的系统磁盘中,均会提示关于当前磁盘空间不足的问题. 现如 ...

  9. Mac系统磁盘空间清理让你不头疼吗?

    Mac原本是想用户不用关心磁盘的问题,不像Windows系统那样,要分C盘.D盘 ,这么多盘的概念.Mac一个盘,直接使用,但前几年的磁盘空间比较小,很多都是256G,或者128G的磁盘,随着系统越做 ...

最新文章

  1. 多线程(二)线程控制
  2. weblogic常见漏洞
  3. “网页内容无法访问”可能是跨域错误!
  4. halcon相机标定及图像矫正(代码)
  5. C和汇编混合编程--------函数调用后ebp、esp值问题
  6. 数据结构Java版之查找算法(三)
  7. 京东健康股价创下新高 市值突破6000亿港元
  8. [设计模式-行为型]解释器模式(Interpreter)
  9. 正则表达式(三)操作符的运算优先级、全部符号的解释
  10. Quartz时间配置(周期任务)
  11. 快速上手python websockets
  12. wps+for+linux+字体大小,WPS for Linux(ubuntu)字体配置(字体缺失解决办法)
  13. 新媒体推广之标题写作的4项原则+6大元素,爆款标题一招就够了! | 黎想
  14. c语言 将数组转化成二叉树
  15. 一文读懂什么是数字证书
  16. close事件 vue_vue中v-on支持的事件总结
  17. RK平台 USB转RS485
  18. 怕麻烦的人,过不了好生活,好真实
  19. (OK) dnf - Fedora23——删除多余不用的内核
  20. 有关林达华的几个地址

热门文章

  1. 中山市区电信5g覆盖地图_5G信号到底有多“垃圾”
  2. ThinkPHP6项目基操(10.不可预知的內部异常处理)
  3. java hashmap 常用方法_Java的HashMap中的常用方法总结
  4. Python文档阅读笔记-PyAutoGUI基本使用
  5. CMake笔记-使用CMake GUI生成MinGW的Makefiles及编译hiredis
  6. C++|Qt工作笔记-Windows平台下的句柄与Qt中QWindow::winId()以及 QPlatformWindow::handle的区别与联系
  7. bat 修改txt_善用bat命令提高办公效率
  8. ubuntu18.0.4设置开机脚本
  9. ios html字符转义字符串,iOS HTML特殊字符转译
  10. java 自动转 golang_基于dubbo-go的golang与java通信解决方案实践——伍:golang代码的生成...