本文主要是介绍【问题排查】linux不重启应用释放被删磁盘空间的技术方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天同事告诉我,有台机器磁盘报警 占用100%,然后看到apollo一直在打印日志,但apollo正常情况下不能直接重启, 删除日志释放磁盘空间失效。
这种问题,原因是文件被删除,但是还被进程占用。怎么解决这个问题呢
1、lsof | grep deleted #找到未能删除掉的文件,确定占用的进程号;截图示例,第2个其实就是进程号,但由于被我处理过,这里简单示例
2、ll /proc/$PID/fd |grep deleted #找到相应文件句柄;
举例:ll /proc/26400/fd |grep deleted , 截图的数字171是 FD_NUM
3、echo > /proc/$PID/fd/$FD_NUM #清除文件内容
举例: echo > /proc/26400/fd/171
执行后, 通过 df -lh 查看磁盘空间正常。
随心记录,做个备份
这篇关于【问题排查】linux不重启应用释放被删磁盘空间的技术方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!