Linux - 生成父进程树的子进程kill

时间:2017-02-13 09:28:08

标签: bash unix

动机:

在Java程序中,我设置了一个在-XX:OnOutOfMemoryError上执行的bash脚本。该脚本负责将堆转储上载到HDFS。但是,通常只会上传文件的一部分。

我怀疑在上传脚本完成之前,JVM会被集群管理器杀死。我的猜测是JVM接收进程组kill信号并将bash脚本(即其子进程)也删除。

问题:

unix中是否有办法以这样的方式运行子进程:当父进程收到组终止信号时它不会死?

1 个答案:

答案 0 :(得分:1)

您可以使用disown。在后台启动该过程,然后将其取消,并且进程父级的任何终止信号将不再传播给子级。

脚本看起来像:

./handler_script &
disown