Translation(s): English - Russian


systemd - system and service manager

Introduction

systemd is a system and service manager for Linux. systemd is compatible with SysV and LSB init scripts. It can work as a drop-in replacement for sysvinit. Systemd

Please see the upstream page for more information.

Installing and Testing

systemd was included in Debian wheezy as a technology preview. Please make sure that you are using Debian testing or newer to get a recent version of systemd.

To install systemd run:

# apt-get update
# apt-get install systemd

This will install the systemd packages but will not configure systemd as your init system.

In order to use systemd you should also install systemd-sysv which provides the symlinks links for /sbin/init.

# apt-get install systemd-sysv

In order to boot your system with the newly installed systemd, simply reboot.

# reboot

If you run a self-compiled kernel, make sure you have 2.6.39 or newer and enable the following options:

 * CONFIG_DEVTMPFS=y
 * CONFIG_CGROUPS=y
 * CONFIG_AUTOFS4_FS=[y|m]
 * CONFIG_IPV6=[y|m], optional, but highly recommended
 * CONFIG_FANOTIFY=y, optional, required for systemd readahead. available in Linux kernel >= 2.6.37.

For an up-to-date list, see section "REQUIREMENTS" in the upstream README file.

Known Issues and Workarounds

Issue #1: sysvinit vs. systemd-sysv

Upgrade to sysvinit ≥ 2.88dsf-44.

Issue #2: encrypted swap blocks boot

See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=712439#70 for a patch.

According to the bug, the patch is no longer required as long as you upgrade to dmsetup 2:1.02.83-1.

Issue #3: Booting with lvm (especially with separate /usr) fails

Upgrade to lvm2 ≥ 2.02.104-1

Debugging systemd

Sometimes it is necessary to investigate why systemd hangs on startup or on reboot/shutdown.

Solution #0: Remove "quiet" from Kernel command line (so called "cmdline" or "grub line")

Solution #1: Increase verbosity via cmdline: Add "systemd.log_target=kmsg systemd.log_level=debug"

Of course you can have a "temporary" persistent solution:

[ /etc/default/grub ]
GRUB_CMDLINE_LINUX="systemd.log_target=kmsg systemd.log_level=debug" <--- Add here (by uncommenting you can easily switch to debug)

# update-grub

In addition enhance cmdline with "systemd.sysv_console=1" (0: disabled, 1: enabled).

Solution #2: Increase verbosity via /etc/systemd/system.conf

LogLevel=debug           <--- Uncomment this line and use "debug" (default: commented and "info")
LogTarget=syslog-or-kmsg <--- Uncomment this line (default: commented)
SysVConsole=yes          <--- Uncomment this line (default: commented)

HINT: "man system" and "man systemd.conf" (Note: File is system.conf vs. man-page system*d*.conf)

HINT: How to check Kernel command line parameters/options?

# cat /proc/cmdline

NOTE on LogLevel (see systemd(1) and systemd.conf(5)):

"Set log level. As argument this accepts a numerical log level or the well-known syslog(3) symbolic names (lowercase): emerg, alert, crit, err, warning, notice, info, debug."

HINT: Keep a copy of /sbin/init from sysvinit package in case of rescue (so you can use init=/sbin/init.sysvinit in cmdline)!

# cp -av /sbin/init /sbin/init.sysvinit <--- Before installing systemd-sysv package

See also http://fedoraproject.org/wiki/How_to_debug_Systemd_problems

Bugs and Bug-Tracking-Systems

Where to get help?

Systemd is a young project with a strong emphasis on solving problems in a distribution agnostic manner.

Debian specific channels include

Several other distributions are using systemd

Resources

TODO


CategoryPermalink