繁体   English   中英

CPU 100% 被 lockgit 使用

[英]CPU 100% used by lockgit

顶部显示 lockgit 使用 349.2% CPU

我应该如何调查这种情况?

我没有杀它,因为不知道会不会有其他问题。

我重新启动gitlab但它没有用。

$ kill 3725346

在此处输入图像描述

kill 对它没有影响,它似乎自动重启。

尝试删除

我想找到lockgit文件夹位置并将其删除。

$ cd /proc/185258ll
$ ll

在此处输入图像描述

我找不到文件夹

利用

$ kill 3725346

如果需要, kill -9

在此之前,您可能希望使用ps lp 3725346进行调查以了解其父级,并sudo lsof -p 3725346查看它打开了哪些文件。 lsof实用程序还可以帮助您找到保持打开感兴趣文件的其他进程。

当然,> 2 GiB 的常驻集令人印象深刻。 请注意,此命令或随后重新启动的 git 命令是立即分配,还是 memory 占用空间随时间缓慢增长。

编辑

pkg 源代码位于https://github.com/jswidler/lockgit

弄清楚它是如何被调用的,包括命令行参数和环境。

用调试符号编译它。 在 gdb 下调用(或attach gdb 附加到正在运行的、旋转的进程中)。 在 main() 处设置一个断点,然后单步执行它直到事情崩溃,就像您调试任何误入歧途的自己的程序一样。


在极端情况下,您可以安排有问题的代码根本不运行。 例如,chdir 到它的目录,然后cp -p /usr/bin/true lockgit 它会立即成功,没有任何效果。 如果您需要它来正确操纵一些秘密,这很糟糕,但如果您只想继续前进而不需要无用的旋转过程,那就太好了。

这可能会让您更好地了解正在发生的事情。 如果没有,那么咬紧牙关卸载 lockgit,一旦发现无法使其在您的环境中可靠运行,请停止使用该程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM