当 CENTOS 7 中 PID 不断变化时如何终止进程(httpd)

当 CENTOS 7 中 PID 不断变化时如何终止进程(httpd)

当我尝试使用以下方法重新启动 httpd 服务时systemctl restart httpd

检查状态后,我发现该进程已停止,另一个进程正在运行。因此我使用以下命令将其删除yum erase httpd

为了谨慎起见,我检查了该进程是否仍在运行 ps aux | grep httpd#,结果发现它确实在运行,但这次 PID 不同。经过后续查询后,PID 不断变化。如果我尝试使用任何 PID 终止进程,它会说NO Such Process

查看截图:

在此处输入图片描述

因此问题是,我该如何停止此过程,以便可以从头开始安装服务并对其进行配置?

答案1

你必须明白,当你grep httpd不只是恢复任何 Apache 进程时但 grep 进程也是如此. 你会看到你自己的命令被反射回来。

# ps ax | grep httpd
1818 ? S 0:53 /usr/sbin/httpd
38729 ? S 4:38 /usr/sbin/httpd
38730 ? S 4:49 /usr/sbin/httpd
54915 pts/0 S+ 0:00 grep httpd

答案2

尝试:

find / -name "httpd.pid"
然后删除 pid 文件(如果存在)。

另外,以防万一:

systemctl stop httpd
systemctl disable httpd

Machavity 也是对的,每当你从 ps 的输出中 grep 时,你也会看到你的 grep 命令。这是你会习惯的事情。

答案3

另一种方法是,您可以killall httpd终止所有名为 httpd 的进程。

相关内容