防止进程使用pkill杀死自己

卡巴斯基:

我正在为启动服务脚本编写停止例程:

do_stop()
{
  rm -f $PIDFILE
  pkill -f $DAEMON || return 1
  return 0
}

问题在于pkill(与killall相同)也与表示脚本本身的进程匹配,并且它基本上会自行终止。如何解决?

user4815162342:

您可以从结果中明确滤除当前的PID:

kill $(pgrep -f $DAEMON | grep -v ^$$\$)

要正确使用该-f标志,请确保提供守护程序的整个路径,而不仅仅是子字符串。这样可以防止您杀死脚本(并消除对上面的需求grep),也可以杀死所有恰好共享守护程序名称的其他系统进程。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章