? systemd – Das Init-System der modernen Linux-Distributionen
systemd ist ein System- und Service-Manager für Linux-Betriebssysteme. Es ersetzt klassische Init-Systeme wie SysVinit oder Upstart und ist mittlerweile Standard in den meisten großen Distributionen wie Debian, Ubuntu, Fedora und Arch Linux.
? Inhaltsverzeichnis
- ? Überblick
- ⚙️ Grundfunktionen
- ? Komponenten
- ? systemctl – Das zentrale Tool
- ? Verzeichnisse & Unit-Dateien
- ? Vorteile
- ⚠️ Kritik
- ? Weiterführende Links
? 1. Überblick
systemd wurde entwickelt, um die Startzeit von Linux-Systemen zu verkürzen, Prozesse konsistent zu verwalten und moderne Funktionen wie Parallelausführung, Abhängigkeiten und Cgroups effizient zu nutzen. Es wurde erstmals 2010 von Lennart Poettering bei Red Hat vorgestellt.
⚙️ 2. Grundfunktionen
- ? Paralleler Systemstart
- ? Service-Management (Start, Stopp, Status)
- ? Automatisches Neustarten von Services
- ?️ Verwaltung von Mountpoints, Sockets, Devices
? 3. Wichtige Komponenten
Komponente | Beschreibung |
---|---|
systemd | Der Hauptprozess (PID 1) |
systemctl | Steuerungstool für Dienste |
journalctl | Zugriff auf das Log-System |
loginctl | Verwaltung von Benutzer-Sessions |
hostnamectl | System-Hostname verwalten |
timedatectl | Datum, Zeit, Zeitzone setzen |
? 4. systemctl – Das zentrale Steuerungstool
Häufige Befehle:
systemctl start nginx
→ ? Startet den Dienst „nginx“systemctl stop nginx
→ ⛔ Stoppt den Dienstsystemctl status nginx
→ ? Zeigt den Statussystemctl enable nginx
→ ? Aktiviert Autostart beim Bootsystemctl disable nginx
→ ❌ Deaktiviert Autostart
? 5. Unit-Dateien & Verzeichnisse
Typen von Units:
*.service
→ Dienste*.socket
→ Sockets*.target
→ Zielzustände*.mount
→ Dateisysteme*.timer
→ Zeitgesteuerte Tasks
Pfade:
- ?
/etc/systemd/system/
→ Benutzerdefinierte Units - ?
/lib/systemd/system/
→ Distributionseigene Units - ?️
/run/systemd/system/
→ Laufzeitdaten
? 6. Vorteile von systemd
- Schnellere Bootzeiten
- Einheitliche Verwaltung aller Ressourcen
- Native Unterstützung von Abhängigkeiten
- Logging mit
journalctl
- Unterstützt moderne Linux-Funktionen wie Cgroups
⚠️ 7. Kritikpunkte
- ? Komplexität: Zu viele Funktionen in einem Paket („Monolith“).
- ? Transparenz: Binary-Logs statt einfacher Textdateien.
- ? Abhängigkeit: Viele Distributionen und Tools hängen stark von systemd ab – erschwert Alternativen.