Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

Systemd — Dienstverwaltung

15. 10. 2025 Aktualisiert: 27. 03. 2026 1 Min. Lesezeit intermediate

Systemd ist das Init-System auf den meisten modernen Distributionen. Es bietet eine einheitliche Methode zur Verwaltung von Prozessen, Diensten und Logs und ersetzt die aelteren SysVinit und Upstart. Im Vergleich zu einfachen Init-Skripten bietet es deklarative Konfiguration, automatische Abhaengigkeitsaufloesung, parallelen Dienststart und erweiterte Ressourcensteuerung. Das Verstaendnis von systemd ist fuer jeden unverzichtbar, der Linux-Server verwaltet.

Grundlegende Befehle

systemctl start|stop|restart|reload|status nginx
systemctl enable|disable nginx
systemctl list-units --type=service --state=failed
systemctl list-timers                   # systemd-Timer (Cron-Ersatz)

Der Befehl systemctl status zeigt den Dienststatus einschliesslich der letzten Log-Zeilen, PID und Laufzeit. Fuer detailliertere Diagnostik verwenden Sie journalctl -u dienst.

Eigener Dienst

[Unit]
Description=Meine Anwendung
After=network.target postgresql.service

[Service]
Type=simple
User=app
WorkingDirectory=/opt/myapp
ExecStart=/opt/myapp/bin/server --port 8080
Restart=on-failure
RestartSec=5
EnvironmentFile=/opt/myapp/.env

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now myapp

Die [Unit]-Sektion definiert Abhaengigkeiten — After stellt die korrekte Startreihenfolge sicher, Requires erstellt eine harte Abhaengigkeit. [Service] konfiguriert die Ausfuehrung: Type=simple fuer direkten Start, Type=forking fuer Daemons, Type=notify fuer Dienste, die Bereitschaft signalisieren. Restart=on-failure startet bei Fehlern automatisch neu, RestartSec legt die Verzoegerung zwischen Versuchen fest.

Ressourcenlimits

[Service]
CPUQuota=200%
MemoryMax=2G
LimitNOFILE=65535
ProtectSystem=strict
PrivateTmp=yes
NoNewPrivileges=yes

Systemd-cgroups-Limits isolieren Dienste und verhindern, dass ein Dienst alle Systemressourcen verbraucht. ProtectSystem=strict gewaehrleistet schreibgeschuetzten Zugriff auf Systemverzeichnisse, PrivateTmp isoliert /tmp fuer jeden Dienst. Diese Sicherheitsdirektiven werden fuer Produktionsbereitstellungen empfohlen.

Debugging

systemctl status myapp -l              # vollstaendiger Status mit Logs
journalctl -u myapp --since '5 min ago' # Logs der letzten 5 Minuten
systemd-analyze blame                  # was den Boot verlangsamt
systemd-analyze critical-chain myapp   # Abhaengigkeitskette

Systemd ist Standard

Lernen Sie Unit-Dateien, Abhaengigkeiten und Ressourcenlimits. Die Investition in systemd-Wissen zahlt sich bei jeder Bereitstellung und jedem Troubleshooting aus.

systemdlinuxservices
Teilen:

CORE SYSTEMS Team

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.