Linux显示磁盘空间不足,/tmp文件夹占用100%问题分析和解决方案

系统运行过程中发现无法上传文件,第一反应是磁盘空间不足导致,登录服务器后查看文件存放的空间充足,但是无法上传文件且命令行的tab键自动补充也提示空间不足。最后经过搜索和分析发现是/tmp 文件夹占用100%导致。以下记录分析和解决流程。

问题分析

        服务器环境

                操作系统:银河麒麟V10

                CPU:鲲鹏(ARM)

1. 通过 df -h 查看磁盘占用,发现/dev/vdb1 (文件存放路径)占用42%,空间充足;但是/tmp 文件夹占用率100%;

df -h
Linux显示磁盘空间不足,/tmp文件夹占用100%问题分析和解决方案

这里已经释放了部分空间所以/tmp占用为91%。

2. 进入/tmp路径查看占用情况,发现文件占用才5.7M,实际总空间有16G。

cd /tmp
Linux显示磁盘空间不足,/tmp文件夹占用100%问题分析和解决方案

3. 由于tmp为临时文件夹,文件使用结束后自动删除,猜测存在文件被删除但是空间未释放的情况。通过 lsof  /tmp 查看文件情况,发现有大量的文件被删除但是依旧被进程占用,导致无法释放空间。

lsof  /tmp
Linux显示磁盘空间不足,/tmp文件夹占用100%问题分析和解决方案
  1. 通过以上截图查看占用文件的进程PID为3860289,此进行未部署的springboot项目。正常情况下重启项目即可释放,但是当前为线上项目,重启会影响用户使用。所以需要不通过重启释放空间。

解决问题

  1. 查询文件占用进程的文件fd信息 ls -i /proc/{进程PID}/fd 举例如下:
 ls -i /proc/3860289/df
Linux显示磁盘空间不足,/tmp文件夹占用100%问题分析和解决方案

2. 通过 >/proc/{进程pid}/fd/{文件fd} 解除空间占用(文件fd为上图中红色部分第一个数字),举例如下:

>/proc/3860289/fd/999

3. 批量解除文件占用,可通过编写shell脚本解决,举例:删除pid为3860289中fd为500到1000的文件占用。

#!/bin/bash
for i in {500..1000}
do
/proc/3860289/fd/$i
done

4. 以上为临时删除文件占用,最后可通过重启应用解决问题 kill -9 {PID}

kill -9 3860289(PID)

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/10723

赞 (0)
凯影的头像凯影
上一篇 2023年12月22日 下午2:35
下一篇 2023年12月25日 下午3:58

相关推荐

  • ubuntu 使用 ifupdown管理网络连接

    由于需要批量永久修改IP,研发提供的脚本是基于修改interfaces的,所以需要使用ifupdown,高版本的ubuntu使用的都是NetworkManager 卸载 NetworkManager 可能会影响你的网络连接配置,因此在卸载之前确保有其他方式管理网络连接。 步骤 1:备份当前配置 在卸载 NetworkManager 之前,最好备份当前的网络配…

    2024年5月21日
    1.9K00
  • Win10如何关闭自动锁屏密码-Win10关闭自动锁屏密码方法

    自动锁屏密码通常是为了保护用户的隐私和数据安全。然而,在某些情况下,如在家中或者个人办公室使用电脑时,用户可能希望关闭自动锁屏密码功能,以便更快速地访问电脑,那么下面小编就给大家详细介绍一下Win10关闭自动锁屏密码方法吧。   Win10关闭自动锁屏密码方法 台式机   第一种方法是通过“设置”来关闭自动锁屏密码。   首先,点击屏幕左下角的Windows…

    2024年6月6日
    2.3K00
  • 解决CentOS lspci(command not found)方法

    今日需要查看一台机器的显卡型号,但未安装驱动,只能通过lspci 进行查询 在进行CentOS最小化安装后,会发现lspci命令不好使。其实是因为相应的软件包没有安装。在终端中执行下列命令: 将会得到如下的显示内容 在终端中输入 安装后,即可正常使用lspci了。 查看显卡信息: 然后就可以参照型号下载显卡驱动了

    2024年5月6日
    2.3K00
  • 服务器卡死,重启报错: INFO: task blocked for more than 120 seconds

    问题:服务器负载很高,但是CPU利用率不高。服务器经常夯住,网站打不开,SSH连接非常不稳定,输入命令夯住。 重启服务器报错: INFO: task blocked for more than 120 seconds 问题原因:  默认情况下, Linux会最多使用40%的可用内存作为文件系统缓存。当超过这个阈值后,文件系统会把将缓存中的内存全部写…

    2023年3月27日
    2.3K00
  • 爽了!免费的SSL,还能自动续期!

    兄弟👬🏻,当你手里有不少域名,每个域名又配置子域名,那么ssl将是一笔不小的费用。当然各个云厂商,也都有提供免费的ssl证书,但这里有一个问题,就是基本都不提供免费的泛域名证书(免费20个单域名证书),比如 x.gaga.plus、b.gaga.plus 这就要申请2个域名证书了!并且3个月就过期,一年就折腾这,都能折腾哭😭!那咋办? 像我这样做技术分享的,…

    2024年6月4日
    1.7K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信