根据这个常见问题解答(以及许多其他书籍):
ftp://rtfm.mit.edu/pub/faqs/unix-faq/programmer/faq
1.15 为什么我的进程在它的父进程死亡时没有得到 SIGHUP?
当没有一个“停止”时,SIGHUP 不会被发送到后台进程。
但是我们都知道,如果没有在后台进程中捕获 SIGHUP,那么当您关闭终端(或像 ssh 之类的连接)时,它们就会死掉。
即 CTRL+Z - bg 不足以让进程在终端关闭时存活下来。
但为什么?任何智慧都值得赞赏!