php小编苹果为您解析"temp文件夹突然爆满怎么解决?tmp文件夹占用100%问题解析"。当temp文件夹突然爆满,tmp文件夹占用100%时,可能是因为系统或应用程序临时文件过多而导致的。解决方法包括手动清理临时文件、检查是否有程序错误导致文件无法删除、修改临时文件存储路径、设置自动清理策略等。通过采取适当的措施,您可以有效解决temp文件夹占用过多磁盘空间的问题,确保系统正常运行。
tmp文件夹占用100%问题解析
1、通过 df -h 查看磁盘占用,发现/dev/vdb1 (文件存放路径)占用42%,空间充足;但是/tmp 文件夹占用率100%。
df -h
这里已经释放了部分空间所以/tmp占用为91%。
2、进入/tmp路径查看占用情况,发现文件占用才5.7M,实际总空间有16G。
cd /tmp
3、由于tmp为临时文件夹,文件使用结束后自动删除,猜测存在文件被删除但是空间未释放的情况。通过 lsof /tmp 查看文件情况,发现有大量的文件被删除但是依旧被进程占用,导致无法释放空间。
lsof /tmp
4、通过以上截图查看占用文件的进程PID为3860289,此进行未部署的springboot项目。正常情况下重启项目即可释放,但是当前为线上项目,重启会影响用户使用。所以需要不通过重启释放空间。
解决问题
1、查询文件占用进程的文件fd信息 ls -i /proc/{进程PID}/fd 举例如下:
ls -i /proc/3860289/df
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
以上是temp文件夹突然爆满怎么解决?tmp文件夹占用100%问题解析的详细内容。更多信息请关注PHP中文网其他相关文章!