Content #
由于apache2服务会启动多个进程,直接用kill命令会导致部分进程成为僵尸进程,可用下面的命令终止apache2进程:
sudo systemctl kill apache2
systemd向进程发送的信号为默认的SIGTERM(15),这被认为是clean signal,即 apache2服务能够在接收到该信号后做清理工作,再结束进程。验证:
systemctl is-active apache2
inactive
SIGKILL信号被认为是unclean signal,进程会被直接结束掉,没有做结束的清理工作:
sudo systemctl kill -s SIGKILL apache2
systemctl is-active apache2
active
之所以会看到active,是因为apache2的配置文件中有:
Restart=on-abort
在收到unclean signal时,会重启apache2进程。