问题
如何识别陷入无限循环的程序?它在哪里运行、死亡、然后再次运行?我怎样才能杀死它并防止它再次启动 - 重新安装软件包是唯一的方法吗?
背景
我刚刚从 CentOS 6.7 机器上删除了该sos
软件包,以阻止它sosreport
每分钟以 root 身份运行一次,这会占用主要资源并减慢服务器速度。当我试图杀死 PID 时,它只是使用另一个不同的 PID 再次弹出。它似乎会自行退出,但随后几乎会立即再次运行。
这表明该进程不是正常定义的“僵尸”,因为它会自行退出然后再次弹出作为新进程。
我检查了 crontab 是否有运行它的条目,但找不到一个,而且我不知道如何检查此类问题。最终,重新安装软件包似乎解决了这种情况下的问题。
奖金问题
这种行为是否表明存在更广泛的问题?
答案1
你是用yum卸载的吗?
我会检查是否有任何可能残留的startup/upstart/init.d 脚本。
作为最后的手段,如果没有启动脚本,您可以尝试将其移动到 /tmp/ 目录:
sudo mv `which sosreport` /tmp/