文档章节

linux未停止服务删除文件后没有释放空间

李-明-亮
 李-明-亮
发布于 2016/04/18 14:16
字数 655
阅读 73
收藏 0

     今天早上突然发现服务宕机了,所以就打开ssh,连接地址上去看了一下,心里想为什么好端端的会宕机呢,以前也出现过这种情况,有可能是日志又满了吧,要不为什么会宕机呢!所以输入df -hl,之后看到/data下挂载的磁盘使用率已经到达100%了!原来和我想的一模一样的啊,心想去删除点日志就好了!进入data中看了一眼之后我就蒙圈了,我的磁盘一共100G,但是data中只有13G的使用,当时有点没相信,再次执行还是13G,然后又输入df -hl查看剩余空间,还是使用了100%,完事我就蒙逼了为什么会出现这样的情况呢!

     后来想想是不是和windows一样有什么隐藏的东西呢!就想看一看详细使用情况,然后百度了一下,搜索之后看到第一个信息我眼前一亮,我遇到可能是这个问题!进去看了,情况大致和我差不多!大致意思是这样的:

在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的文件夹结构上解除链接(unlink).然而假设文件是被

打开的(有一个进程正在使用),那么进程将仍然能够读取该文件,磁盘空间也一直被占用。

后来想到我们之前的tomcat日志总是过大,写过一个定时任务的脚本,每天晚上去删除/data下的日志文件,但是没有停止服务,可能就是因为这个原因!

     然后执行了文章上的的命令:lsof  |grep deleted,获得了一个已经被删除但是仍然被应用程序占用的文件列表,看到虽然文件在表面被删除了,但是由于服务没有停止,内存空间仍然被继续使用着!这就是导致为什么我只使用了13G的空间,但是磁盘已经被占满的原因所在!后来手动停止服务器,被删除文件所占用的进程,再执行df -hl发现磁盘空间在一点点的变多了,说明他在释放那些内存空间,这下心里踏实了!


当时查看文章的链接http://up20080818.blog.163.com/blog/static/161790378201211024250736/

参考文章:http://www.cnblogs.com/mfryf/p/3334451.html




© 著作权归作者所有

共有 人打赏支持
李-明-亮
粉丝 0
博文 2
码字总数 976
作品 0
大连
加载中

评论(2)

wenzhulove
wenzhulove
79 x 32
瓶中胖鱼
瓶中胖鱼
44顶!!
Linux简易指南

1.linux查看tomcat是否启动,查看Tomcat的运行进程 2.运行sh文件 3.查看文件 Linux下查看文件内容的命令 日志分析查看——grep,sed,sort,awk运用 4.创建目录 在 Linux 下用 mkdir 命令来创建...

刘阳0292
2017/07/09
0
0
磁盘空间满问题排查方法

分析: 导致该问题的可能原因包括:1、磁盘分区空间使用率达到百分之百。2、 磁盘分区inode使用率达到百分之百。3、僵尸文件:已删除文件因句柄被占用未释放导致相应空间未释放。4、 挂载点覆...

wakefast
2017/12/27
0
0
解决linux根目录磁盘空间满

根目录磁盘写满,往往都是.log日志造成的,首先想到的是查找大的日志文件 1、find查找根下大于800M的文件 find / -size +800M -exec ls -lh {} ; 找到大的日志文件关闭掉,或者更改到其他磁盘...

韩立伟
06/27
0
0
捷讯技术分享阿里云ECS服务器如何更换系统盘(非公共镜像)

3.2 创建镜像 注意:创建镜像的时候,请确保系统盘有足够的空间,建议预留 1GB 的空间,否则系统盘扩容更换后,系统可能无法正常启动。

捷讯技术17
06/21
0
0
Centos7 add delete Swap exchange partitions

导读 Linux 将物理内存分为内存段,叫做页面。交换是指内存页面被复制到预先设定好的硬盘空间(叫做交换空间)的过程,目的是释放对于页面的内存。物理内存和交换空间的总大小是可用的虚拟内存...

问题终结者
05/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Maven 项目中依赖的搜索顺序

ettings_mirror 的优先级高于 central settings_profile_repo 优先级高于 settings_mirror settings_profile_repo 优先级高于 pom_repositories settings_profile_repo 优先级高于 pom_prof......

xingyu4j
32分钟前
2
0
改变maven项目的名称

pom.xml <groupId>com.soft.xxx</groupId><artifactId>xxx</artifactId><packaging>war</packaging><version>0.0.1-SNAPSHOT</version><name>xxx Maven Webapp</name><build>......

1713716445
34分钟前
2
0
windows下按照RabbitMQ

rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平...

zhaochaochao
34分钟前
2
0
10个PHP比特币开源项目

如果你是一个Phper,如果你希望学习区块链,那么本文列出的10个开源的Php比特币项目,将有助于你了解在自己的应用中如何加入对比特币的支持。 如果你希望快速掌握使用Php对接比特币钱包的方法...

笔阁
41分钟前
26
0
MyBatis级联探讨

数据模型 <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper name......

职业搬砖20年
45分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部