根据此常见问题解答(以及许多其他书籍):
ftp://rtfm.mit.edu/pub/faqs/unix-faq/programmer/faq
1.15 Why doesn't my process get SIGHUP when its parent dies?
当后台进程都没有“停止”时,SIGHUP 不会被发送到后台进程。
但我们都知道,如果 SIGHUP 没有在后台进程中捕获,那么当您关闭终端(或像 ssh 这样的连接)时,它们就会终止。
即CTRL+Z - bg 不足以让进程在终端关闭时生存。
但是为什么呢? 任何智慧都值得赞赏!
最佳答案
有一个简单的解决方案。在运行命令之前使用 nohup。
关于session - 为什么终端关闭时后台进程组会死掉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5529063/