From SysV init via Upstart to systemd

Scramble at the Start

© Lead Image © Dmitriy Shironosov,

© Lead Image © Dmitriy Shironosov,

Article from Issue 156/2013

SysV init was formerly the sole candidate for starting processes on Linux, but today, a tech-savvy generation of init systems is waiting in the starting blocks.

For many years, the Linux kernel started the init process as its first official act and assigned it a process ID of 1. From that point, the init process spawned all other processes running on the system, acting as a kind of "daemon-starting daemon" that initiated the processes necessary for getting the system working at the required runlevel. SysV init reads a list of configured processes in the /etc/inittab file and then shuffles through the runlevels (Figure 1).

Figure 1: Init goes through various runlevels in the SysV system, all of which are set by inittab, and executes some init scripts in each.

At each runlevel, init – supported by init scripts – launches various services and does not stop until it reaches the originally envisaged target runlevel for the system. In the case of a Debian system with a runlevel target of 1, for instance, the user has no network connection or graphical interface but can still use local applications. When you shut down the computer, init terminates any running processes to leave the system in a safe shutdown state.


Use Express-Checkout link below to read the full article (PDF).

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95


njobs Europe
Njobs Netherlands Njobs Deutschland Njobs United Kingdom Njobs Italia Njobs France Njobs Espana Njobs Poland
Njobs Austria Njobs Denmark Njobs Belgium Njobs Czech Republic Njobs Mexico Njobs India Njobs Colombia