init

Research Unix init runs the initialization shell script located at /etc/rc,[2] then launches getty on terminals under the control of /etc/ttys.

[6][7] To remove the requirement to edit /etc/rc, BSD variants have long supported a site-specific /etc/rc.local file that is run in a sub-shell near the end of the boot sequence.

[8] The order in which scripts are executed is determined by the rcorder utility based on the requirements stated in these tags.

However, the Solaris and illumos operating systems typically reserve runlevel 5 to shut down and automatically power off the machine.

[12] The root user typically changes the current runlevel by running the telinit or init commands.

Traditionally, one of the major drawbacks of init is that it starts tasks serially, waiting for each to finish loading before moving on to the next.

Various efforts have been made to replace the traditional init daemons to address this and other design problems, including: As of February 2019[update], systemd has been adopted by most major Linux distributions.

Version 7 Unix : /etc listing, showing init and rc
Version 7 Unix: contents of an /etc/rc Bourne shell script
sysv-rc-conf , a TUI utility that selects which SysV-style init scripts will be run in each runlevel