|
When the rc.sysinit system initialization script starts, the first thing
it does is re-run itself through initlog (via the
-r parameter). As
events in the bootup sequence proceed, these are passed via the open
pipe to initlog. In the initial phase of booting, the root filesystem
is mounted read-only. The initlog cannot start
minilogd, hence, these events are buffered.
As the bootup proceeds, the root filesystem is re-mounted read/write.
Then, minilogd is started, and initlog begins logging events via
the normal syslog() function, after flushing its buffer of events.
Additionally, initlog will now be used to send events through the
normal command line parameters as opposed to the open pipe.
Eventually, the system log daemon syslogd is started. Then, minilogd
flushes its buffers to syslogd, which then (by default) writes the
accumulated boot messages to /var/log/messages and /var/log/boot.log.
The bootup process continues, as initlog feeds messages to syslogd via
syslog().
|