[ Thanks to Sensei
for this link. ]
“The /etc/inittab file contains the info needed for the system
to boot and what to do in certain cases. The default runlevel is
set here and the system runlevel is determined by this setting or
if you have passed a specific runlevel at the lilo prompt(‘linux 3’
will start the system in runlevel 3).”
“All of the files in the rc#.d directories are just links to a
script in /etc/rc.d/init.d. Upon initialization of the system,
rc.sysinit is run and spawns off the appropriate runlevel by
respawning the script /etc/rc.d/rc # (where # is the runlevel #
that it determined from the default in /etc/inittab or from being
passed to it from the lilo prompt). ‘rc’ runs the K* links first
and then the S* links. As you can see, S seems to stand for start
and K seems to stand fro kill (You Unix and Linux vets will forgive
me if I am wrong 😉 )”
“This whole process is referred to as SysVinit. Most
distributions either init this way or have the ability to do so.
All the distributions based on Red Hat init this way and Debian is
only different in the location of the service scripts. The
actual script for the individual services are in /etc/rc.d/init.d
for Red Hat and variants or /etc/init.d for Debian and
variants.”