java进城杀不死怎么办_linux – 如何杀死永不死的进程?

问题

我有java进程,它既不会死于SIGTERM也不会死于SIGKILL.

logstash 2591 1 99 13:22 ? 00:01:46 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+DisableExplicitGC -Djava.awt.headless=true -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -Xmx1g -Xms256m -Xss2048k -Djffi.boot.library.path=/usr/share/logstash/vendor/jruby/lib/jni -Xbootclasspath/a:/usr/share/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/usr/share/logstash/vendor/jruby -Djruby.lib=/usr/share/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /usr/share/logstash/lib/bootstrap/environment.rb logstash/runner.rb --path.settings /etc/logstash

它会在每次收到信号时重新生成.

Sep 15 13:22:17 test init: logstash main process (2546) killed by KILL signal

Sep 15 13:22:17 test init: logstash main process ended,respawning

这听起来很奇怪,但即使我重新启动服务器,它仍然不会死.

使用以下命令通过init脚本执行进程:

NAME=logstash

LS_USER=logstash

LS_OPTS="--path.settings=/etc/logstash"

LS_PIDFILE=/var/run/$NAME/$NAME.pid

LS_STDERR="/var/log/logstash/logstash.stderr"

DAEMON="/usr/share/logstash/bin/logstash"

runuser -s /bin/sh -c "exec $DAEMON ${LS_OPTS}" ${LS_USER} &>${LS_STDERR} &

除了重新安装操作系统之外,有没有办法强制这个过程杀死?

环境

流程:

logstash 5.0.0~alpha5

OS:

Red Hat Enterprise Linux Server release 6.7 (Santiago)

Java版本:

openjdk version "1.8.0_101"

OpenJDK Runtime Environment (build 1.8.0_101-b13)

OpenJDK 64-Bit Server VM (build 25.101-b13,mixed mode)

服务器部署在Microsoft Azure上.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值