事件源于在服务器运行一个脚本程序…
好好的脚本突然报错,还以为脚本出现问题了。细看报错原因(具体报错信息已经忘记了),是没有可用空间。从没遇见过这个情况,怎么办呢?
一、确定是不是真的是磁盘空间不足
输入命令:df –lh         查看磁盘信息
 
很明显:Filesystem下的挂载点 /dev/xvda1 下的40G容量已经耗尽。
既然问题已经确定了,接下来就是处理了。
处理方法也很简单,就是删文件。
问:删除什么文件?
答:删除占用磁盘空间大,但又无用的文件。
问:什么是无用的文件?
答:如果对系统不熟悉的话,日志可能是你第一的下手目标。
二、如何定位最大文件目录
输入命令: cd  /                  进入根目录。
输入命令:du -h max-depth=1            寻找当前目录,哪个文件夹占用空间最大
 
以上两个命令之后,可以看到 /usr 此路径占用较大磁盘空间,占用了21G。眼尖的同学可能看到了最后一项显示24G,它表示当前目录所有文件占用磁盘空间总和容量是24G。
如法炮制,几番判断后,定位到tomcat的日志文件。
 
由上图可以判断,17G文件在当前目录(tomcat日志目录)文件中。
三、如何定位最大文件
输入命令:ls –lhS                    将文件以从大到小顺序展现
 
最终定位文件为:catalina.out 这个日志文件。
四、确认文件未被占用
删除文件谁都会:rm –f catalina.out 但是,最好确认下是否要下载下来让开发人员分析日志。
辛苦一阵找到文件,删除了很开心,输入命令:df –lh 发现磁盘空间仍是满的状态。跟图一完全没有区别。难道说是需要重启系统吗?linux会这么不友好么?
谷歌一下,发现了这么一段话:
在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。
输入命令:/usr/sbin/lsof|grep deleted       确认删除文件是否被占用
 
确实被占用。根据第二列提供的pid,输入命令:kill -9 13117 杀掉进程。
再次输入命令:df –lh
 
如图,磁盘空间被释放了。问题顺利处理了。
---------------------

linux 硬盘满了如何处理的更多相关文章

  1. linux 硬盘满了如何处理(转)

    linux 硬盘满了如何处理 事件源于在服务器运行一个脚本程序… 好好的脚本突然报错,还以为脚本出现问题了.细看报错原因(具体报错信息已经忘记了),是没有可用空间.从没遇见过这个情况,怎么办呢? 一. ...

  2. linux硬盘满了问题排查

    关键指令: df du find step1: 如果发现硬盘满了,首先要确定一下,使用df查看硬盘使用情况 df -h step2: 从第一步结果判定满了,确定哪些文件或哪个文件占了大头,使用du指令 ...

  3. linux 硬盘满了后,查看使用目录占用空间情况

    cd 切换到目录, du -ah --max-depth=1 查看当前目录下的 文件夹 占用情况

  4. Linux硬盘满了,系统速度贼慢,居然是Jenkins.log太大了

    用查找命令找出大于1G的文件 find / -size +1G -print 为什么jenkins.log会产生40+G的文件? 以上在Windows上的时候,运行了几个月,也没有发生这种现象? 而在 ...

  5. CentOS mysql硬盘满了挂载阿里云硬盘

    前提,昨天晚上导入数据库到本地时候发现硬盘满了,出了,好多错,这边在目录下新建了一个/mysql这样的数据库目录,再将/etc/my.cnf 下的datadir 指向到/mysql下,就可以了 阿里云 ...

  6. 24小时学通Linux内核之如何处理输入输出操作

    真的是悲喜交加呀,本来这个寒假早上8点都去练车,两个小时之后再来实验室陪伴Linux内核,但是今天教练说没名额考试了,好纠结,不过想想就可以睡懒觉了,哈哈,自从大三寒假以来还没睡过懒觉呢,现在也有更多 ...

  7. Linux硬盘性能检测

    对于现在的计算机来讲,整个计算机的性能主要受磁盘IO速度的影响,内存.CPU包括主板总线的速度已经很快了. 基础检测方法 1.dd命令 dd命令功能很简单,就是从一个源读取数据以bit级的形式写到一个 ...

  8. linux硬盘分区格式化及挂载

    1.硬盘的接口类型 硬盘的接口一般分为两种,一种是IDE并行接口,一种是SATA串行接口, 在linux上面IDE接口的硬盘被识别为/dev/hd[a-z]这样的设备,其中hdc表示光驱设备,这是因为 ...

  9. 修改虚拟机linux硬盘的大小

    一.概述 Ubuntu用了一段时间,系统已从原来的4G增长到8G,导致虚拟磁盘不够用,需要修改虚拟硬盘的大小. 但是,修改虚拟机硬盘的大小不像修改内存那么简单,操作一个滑动条就轻松搞定.要知道虚拟硬盘 ...

随机推荐

  1. AVL树探秘

    本文首发于我的公众号 Linux云计算网络(id: cloud_dev) ,专注于干货分享,号内有 10T 书籍和视频资源,后台回复 「1024」 即可领取,欢迎大家关注,二维码文末可以扫. 一.AV ...

  2. min-max容斥学习笔记

    min-max容斥学习笔记 前置知识 二项式反演 \[ f(n)=\sum_{i=0}^n\binom{n}{i}g(i)\Leftrightarrow g(n)=\sum_{i=0}^n(-1)^{ ...

  3. Meterpreter提权详解

      0x01 Meterpreter自动提权 1.生成后门程序 我们在kali的命令行下直接执行以下命令获得一个针对windows的反弹型木马: msfvenom -p windows/meterpr ...

  4. java 11 完全支持Linux容器(包括Docker)

    许多运行在Java虚拟机中的应用程序(包括Apache Spark和Kafka等数据服务以及传统的企业应用程序)都可以在Docker容器中运行.但是在Docker容器中运行Java应用程序一直存在一个 ...

  5. Docker下安装GitLab

    1.需要先安装Docker和Docker Compose,参考:https://www.cnblogs.com/hackyo/p/9280042.html 2.配置GitLab SSL(可跳过): m ...

  6. 第十二节:MVC中的一些特殊优化

    一. 删除WebForm视图引擎 在MVC框架中检索视图的顺序为:当前控制器下对应的文件夹的aspx文件→share文件夹aspx文件→当前控制器下对应文件夹的cshtml文件→share文件夹的cs ...

  7. 页面加载过渡页 loading plugin css

    是前文 plugin 示例 loading 中需要用到的样式.现在样式扩充为 5类.loadtwo 使用到了bgimg /*loading animation loading one*/ /* loa ...

  8. ext.net单元格内容换行显示

    增加style .x-grid3-cell-inner {     white-space: normal; }

  9. 使用Jenkins docker镜像运行Jenkins服务

    需求 使用docker技术管理Jenkins服务器.避免多次部署需要重复安装的重复工作,且可以方便迁移到新的服务器. Jenkins docker镜像 https://hub.docker.com/_ ...

  10. Java反射定义、获取Class三种方法

    反射机制的定义: 在运行状态时(动态的),对于任意一个类,都能够得到这个类的所有属性和方法.  对于任意一个对象,都能够调用它的任意属性和方法. Class类是反射机制的起源,我们得到Class类对象 ...