Dies ist eine alte Version des Dokuments!


Systemd

Ein Service bearbeiten und personalisieren.

systemctl edit --full rc-local

Man könnte auch Dienste direkt in /etc/systemd/system/blabla-custom.service kopieren. Von dem wird abgeraten. Vor allem da viele Services erst von anderen Systemddiensten nur temporär angelegt werden. Das Kommando oben extrahiert die richtigen Files automatisch.

[Unit] 
Description=Puppet agent 
Requires=network.target 
[Service] 
Type=forking 
EnvironmentFile=-/etc/default/puppet 
PIDFile=/run/puppet/agent.pid 
ExecStartPre=/bin/sleep 15
ExecStart=/usr/bin/puppet agent $DAEMON_OPTS 
[Install] 
WantedBy=multi-user.target

Sehr nützlich wenn durch z.B. nicht mehr erreichen von Services wie NB's - WLAN Dienste ihr maximales Timeout erreichen würden.

[Unit]
Description=Make remote CUPS printers available locally
After=cups.service avahi-daemon.service
Wants=cups.service avahi-daemon.service

[Service]
TimeoutStopSec=2
ExecStart=/usr/sbin/cups-browsed

[Install]
WantedBy=multi-user.target

Hierzu legt man sich folgendes File an:

nano /etc/systemd/system/getty@tty1.service.d/override.conf

Mit folgenden Inhalt

[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin xbmc --noclear %I 38400 linux

Hier wird z.B. der xbmc Benutzer automatisch eingeloggt. Danach werden natürlich .zshrc .bashrc und auch die .xinitrc beachtet.

Mit Systemd ist es sehr bequem möglich Dinge zu organisieren ohne das man direkt am Host ist. z.b.

systemctl -H root@myhost.supertux.bla status apache2
systemctl enable nfs-client.target
systemctl enable rpc-statd.service
systemctl enable rpcbind.service

Um z.B. Zeiten beim Systemstart ansehen zu können gibt es zwei nette Befehle:

systemd-analyze plot > bootchart.svg
systemd-analyze blame

Links