我有一个僵尸进程正在改变它的PID,它在增加。在PID大于N的情况下,有可能终止进程吗?
发布于 2015-08-08 21:40:53
pkill -f string其中字符串是进程名的一部分。
发布于 2015-08-09 23:06:57
你不能杀僵尸。顾名思义,它死了。僵尸不是真正的进程,它只是进程表中的一个条目,等待父进程注意到。
一个进程不会改变它的进程ID。如果你看到新的进程ID出现,那是因为有东西正在产生它们。
如果您要杀死的进程正在被监视,监视程序将看到该进程已死亡,因此它将启动一个新的实例。然而,有了监控程序,这个过程就不会变成僵尸,因为监视器会监视它的孩子。
因为你看到了一个僵尸,它有一个父母没有注意到它的孩子。检查父进程是什么:运行ps -o ppid -p 1234,其中1234是僵尸的PID,然后运行ps -p 2345,其中2345是父进程的PID。然后根据父程序来决定您想要做什么,例如配置它以停止生成该孩子。
发布于 2015-08-08 20:00:05
pkill命令可能在您的系统上可用。它不使用PID,而是以进程名模式作为参数,它允许您指定要用它们的名称而不是PID来终止的进程,例如,如果您想终止httpd进程:
pkill http在需要的情况下,它还可以接受-9参数来残酷地停止进程。
默认情况下,它将影响所有匹配作为参数的模式的进程。因此,我建议您在pgrep命令之前使用与参数相同的模式,这将列出所有匹配的进程,这样您肯定不会终止意外的进程。
这些命令接受各种附加筛选器来限制选择的不同标准,如果需要的话,请检查它们的手册页以获取适用于您的筛选器。
https://unix.stackexchange.com/questions/222004
复制相似问题