Systemd Lernpfad
Version vom 17. Oktober 2026, 15:53 Uhr von Thomas.will (Diskussion | Beiträge) (Animationen Stufe 2 und 3 verlinkt)
Lernpfad systemd
- systemd startet, überwacht und beendet alle Dienste eines Linux-Systems.
- Der Lernpfad führt in drei Stufen vom Benutzen über das Schreiben eigener Units bis zur Härtung und zur Suche nach Angreifern.
- Jede Seite hat dasselbe Gerüst: Einfach erklärt, das Wichtigste, Befehle, Stolperfallen, Aufgaben.
- Alle Beispiele sind auf Debian 13 mit systemd 257 geprüft.
| Stufe | Ziel | Inhalte | Animation |
|---|---|---|---|
| Stufe 1 · Basic | Ich verwende es | Dienste bedienen, Status lesen, Logs mit journalctl, Targets und Runlevel | Targets und Reihenfolge |
| Stufe 2 · Fortgeschritten | Ich schreibe Units | Aufbau einer Unit, Pfade und Drop-ins, Wants und After, Type= und Restart=, Timer | Units schreiben · Was gegen Wann |
| Stufe 3 · Security | Ich härte und untersuche | systemd-analyze security, Dienste Schritt für Schritt härten, systemd-run, Persistenz erkennen | härten und untersuchen |
Vorwissen
- Kernel-Initialisierung: wie es bis zu systemd als Prozess 1 kommt
- Kernel und Module
Themen-Bausteine
- Die Bausteine ergänzen den Lernpfad. In der Spalte steht, ab welcher Stufe man sie versteht.
| Baustein | ab Stufe | Inhalt |
|---|---|---|
| Journal und Logging | 1–3 | lesen, filtern nach Feldern, Größe, FSS-Versiegelung, Logs wegschicken ins SIEM |
| Fehlersuche und Analyse | 1–3 | Fehlercodes in status, verify, blame und critical-chain, Rettungswege, coredumpctl |
| Zeit und Sitzungen | 1 | timedatectl, timesyncd mit eigenem NTP-Server, loginctl, Linger |
| Timer | 2 | OnCalendar und Abstände, Persistent, systemd-run, cron und Timer im Vergleich |
| Mounts | 2 | fstab und Mount-Units, nofail und Automount, eigene .mount, RequiresMountsFor |
| Netzwerk | 2 | systemd-networkd, feste IP und DHCP, networkctl, resolved, Karte umbenennen, Bridge |
| Socket-Aktivierung | 2 | Dienste erst bei Bedarf starten, Echo-Server, Accept=yes und no |
| Ressourcen und cgroups | 2 | Slices, systemd-cgls und cgtop, MemoryMax, CPUQuota, set-property |
| tmpfiles, sysctl, Module | 2 | tmpfiles.d, sysctl.d, modules-load.d und weitere *.d-Verzeichnisse |
| Container | 2–3 | systemd-nspawn, machinectl, .nspawn-Dateien, Portable Services |
Bilder
- Alle Bilder sind drawio-Bilder und lassen sich im Wiki direkt bearbeiten.
| Bild | verwendet in |
|---|---|
| systemd-targets | Systemd Stufe 1 Basic |
| systemd-unit-pfade | Systemd Stufe 2 Fortgeschritten |
| systemd-wants-after | Systemd Stufe 2 Fortgeschritten |
| systemd-security-score | Systemd Stufe 3 Security |
Nachschlagen
- Systemd systemctl: alle systemctl-Befehle
- Systemctl kurz und knapp: Crashkurs auf einer Seite
- Systemd Service examples: fertige Service-Beispiele
- Systemd Hardening Workshop: die Härtung Schritt für Schritt mit sed
Ältere Einzelseiten
- Journal: Systemd journald · Systemd-journalctl-beschreibung · Journald Remote Logging
- Timer: Systemd Service timers · Systemd-time-beschreibung · Systemd Certbot Apache Timer
- Mounts und Netzwerk: Systemd mounts · Systemd-networkd · Systemd link · Systemd Isolieren von Diensten vom Netzwerk
- Ressourcen: Systemd.slice · Systemd.resource-control · Systemd cgroups Eigener Slice · Systemd cgroups Nutzen von systemctl set-property · Systemd cgroups Servicedateien bearbeiten · Systemd cgroups Verwendung von Drop-in-Dateien
- Container: Systemd-nspawnd · Systemd-nspawnd-beschreibung · Systemd-portabled
- Zeit und Benutzer: Systemd timedatectl · Systemd NTP · Loginctl · Systemd-homed-beschreibung
- Analyse: Systemd-analyze-beschreibung