シェル終了時の SIGHUP
http://d.hatena.ne.jp/lurker/20070220/1171932797
bash 2.0.2 以降では shopt -s huponexit のようですね。これがデフォルトでは off になっているらしい。
設定されている場合、bash は対話的なログインシェルを終了する時に、全てのジョブに SIGHUP を送ります。
ソースを見ると exit_shell() から
/* If the user has run `shopt -s huponexit', hangup all jobs when we exit an interactive login shell. ksh does this unconditionally. */ if (interactive_shell && login_shell && hup_on_exit) hangup_all_jobs ();
というようにしている。
出典がわからないけどこんなQ&Aも。
http://www2s.biglobe.ne.jp/~hig/q_a/Unix_QA02.html#Q9