Демоны должны быть разветвлены два раза, потому что они должны быть независимы от других процессов, то есть нет способа убить демона, убивающего другой процесс, и должны работать в фоновом режиме, который не подключен к терминалу.
При запуске демон разветвляется, и родитель умирает.Это делает разветвленный процесс дочерним для init
, поэтому в основном он независим от других процессов.
На втором ответвлении дочерний процесс больше не является лидером процесса и отсоединяется от терминала.
Могут применяться и другие полезные практики, чтение исходного кода простого демона может быть проницательным.