不完全なデーモンプロセスに制御端末を割り当てる方法を教えてください UNIX のデーモンプロセスについて勉強しています。デーモンプロセスを作るには、 1. fork する (子プロセスを作って親は死ぬ) 2. setsid する (子プロセスを制御端末から切り離す) 3. もう一度 fork する (セッションリーダーではない孫プロセスを作って子は死ぬ) という手順を踏むのだと、後述のブログ記事等で知りました (chdir, umask, STDIN/STDOUT/STDERR などの取り扱いは、今回は注目しないので省略します) この 3. でやっている二度目の fork が必要な根拠として、セッションリーダーであるデーモンプロセス (1. で fork した子プロセス) に制御端末を割り当てられてしまうとまずいためだ、という理由が挙げられています (シグナルを送られてプロセスを操られてし