The system has a feature that makes it difficult
to handle console output
from a daemon, and you must plan daemon output accordingly.
All terminal devices are subject to the trusted system call,
stopio(S),
which was added to enhance the identification and authentication subsystem
to prevent login spoofing. When a user logs out, the getty
that is respawned on that terminal line calls stopio
with the terminal device name as an argument.
Any processes holding that device open are killed
(signal SIGHUP)
if they try to write to the device again.
Daemons that write to the console are subject to this signal if a logout
occurs at the console between daemon start up and daemon output.
Because most daemons ignore SIGHUP,
their message output is simply lost.
Therefore, you should redirect daemon output to a file or disabled
terminal if it must be
preserved (or redirect the output to the null device as in the above
example).