Getting ready

systemd is based on the concepts of units, an abstraction of all elements that are relevant for system startup and maintenance, and targets, which group units and can be viewed as a runlevel equivalent. Some of the units systemd defines are:

  • Services
  • Sockets
  • Devices
  • Mount points
  • Snapshots
  • Timers
  • Paths

The default targets and their runlevel equivalents are defined in the following table:

sysvinit

Runlevel

systemd target

Notes

0

runlevel0.target

poweroff.target

Halt the system.

1, s, single

runlevel1.target

rescue.target

Single user mode.

2, 4

runlevel2.target, runlevel4.target

multi-user.target

User-defined/site-specific runlevels. By default, identical to 3.

3

runlevel3.target

multi-user.target

Multiuser, non-graphical. Users can usually log in via multiple consoles or via the network.

5

runlevel5.target

graphical.target

Multiuser, graphical. Usually has all the services of runlevel 3 plus a graphical login.

6

runlevel6.target

reboot.target

Reboot the system.

 

Once systemd is started by the Linux kernel, it runs default.target, which is a link to either multi-user.target or graphical.target.

The systemd initialization manager is designed to be compatible with sysvinit, including using sysvinit init scripts.

Some of the features of systemd are:

  • Parallelization capabilities that allow for faster boot times
  • Service initialization via sockets and D-Bus so that services are only started when needed
  • Process monitoring, which allows for process failure recovery
  • System state snapshots and restoration
  • Mount point management
  • Transactional dependency-based unit control, where units establish dependencies between them
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset