kill -0的作用

in linux with 0 comment

今天在学习keepalived+heartbeat的时候,看到试验脚本如下:

vrrp_script check_httpd { script "killall -0 httpd" interval 2 }

上面脚本的意思是检查httpd服务是否down掉。

kill -0就是不发送任何信号,但是系统会进行错误检查。
所以经常用来检查一个进程是否存在,当进程不存在时,
kill -0 pid会返回错误。

#kill -0 pid|name #echo $?
如果返回0则进程、服务在运行中;反之是其他值,则进程死了或者服务已停止。

Responses