Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
lpi1:systemd [2017/05/10 06:38] ingo_wichmann [Units] |
lpi1:systemd [2023/02/15 16:33] (aktuell) |
||
---|---|---|---|
Zeile 6: | Zeile 6: | ||
===== Units ===== | ===== Units ===== | ||
3 Ebenen der Konfiguration von Units: | 3 Ebenen der Konfiguration von Units: | ||
- | - ''/etc/systemd/system/...'' <- (höchste Priorität) Hier dürfen sich Admins austoben | ||
- | - ''/run/systemd/...'' <- dynamisch aus systemd | ||
- | - ''{/usr,}/lib/systemd/system/...'': aus der Paketverwaltung, nicht anfassen. | ||
- | - ''{/usr,}/lib/systemd/system-preset'': aus der Paketverwaltung, nicht anfassen. | ||
- | systemd ist aber auch weiterhin kompatibel zu den aus [[init|sysVinit]] bekannten Startskripten in | + | - ''/lib/systemd/*'' und ''/usr/lib/systemd/*'': (niedrigste Priorität) aus der Paketverwaltung, nicht anfassen. |
- | * ''/etc/init.d/'' | + | - ''/run/systemd/*'': dynamisch von systemd erzeugt |
+ | - ''/etc/systemd/*'': (höchste Priorität) Hier dürfen sich Admins austoben | ||
+ | |||
+ | Unit-Files: | ||
+ | |||
+ | * Defaults der Distribution | ||
+ | * ''{/usr,}/lib/systemd/system/...'' | ||
+ | * ''{/usr,}/lib/systemd/system/….d/*.conf'' | ||
+ | * Voreinstellungen, siehe ''man systemd.preset'' | ||
+ | * ''{/usr,}/lib/systemd/system-preset/'' | ||
+ | * temporär, dynamisch von systemd erzeugt | ||
+ | * ''/run/systemd/...'' | ||
+ | * ''/run/systemd/….d/*.conf'' | ||
+ | * Hier dürfen sich Admins austoben | ||
+ | * ''/etc/systemd/system/...'' | ||
+ | * ''/etc/systemd/system/….d/*.conf'' | ||
+ | |||
+ | Übersicht Unit-Files: | ||
+ | systemctl list-unit-files | ||
+ | |||
+ | Übersicht Dienste: | ||
+ | systemctl list-unit-files --type service | ||
+ | |||
+ | systemd ist aber auch weiterhin kompatibel zu den aus [[init|sysVinit]] bekannten Startskripten in ''/etc/init.d/'' | ||
==== Systemd Architektur ==== | ==== Systemd Architektur ==== | ||
+ | === ctl-Befehle === | ||
* ''systemd-hostnamed'' --> ''hostnamectl'' | * ''systemd-hostnamed'' --> ''hostnamectl'' | ||
* ''systemd-machined'' --> ''machinectl'' | * ''systemd-machined'' --> ''machinectl'' | ||
Zeile 22: | Zeile 42: | ||
* ''systemd-shutdownd'' --> ''shutdown'' | * ''systemd-shutdownd'' --> ''shutdown'' | ||
* ''systemd-timedated'' --> ''timedatectl'' | * ''systemd-timedated'' --> ''timedatectl'' | ||
- | * Systemd Unit Arten | + | * ''bootctl'' |
- | * service: von Systemd gestartete Anwendungen | + | * ''busctl'' |
- | * socket: Socket Aktivierung | + | * ''networkctl'' |
- | * scopes: ausserhalb von systemd gestartete Anwendungen | + | * ''resolvectl'' |
- | * slice: Resourcen für Prozessgruppen | + | |
- | * path: Pfad Aktivierung | + | === Systemd Unit Arten === |
- | * mount: Mountpoints (teilweise aus ''/etc/fstab'') | + | * service: von Systemd gestartete Anwendungen |
- | * automount: automatische Mountpoints | + | * socket: Socket Aktivierung |
- | * target: Gruppen von Units | + | * scopes: ausserhalb von systemd gestartete Anwendungen |
+ | * slice: Resourcen für Prozessgruppen | ||
+ | * path: Pfad Aktivierung | ||
+ | * mount: Mountpoints (teilweise aus ''/etc/fstab'') | ||
+ | * automount: automatische Mountpoints | ||
+ | * target: Gruppen von Units | ||
+ | * timer: Service-Units zeitgesteuert starten | ||
=== Standard Target === | === Standard Target === | ||
Zeile 53: | Zeile 79: | ||
systemctl enable dienst.service | systemctl enable dienst.service | ||
systemctl reenable dienst.service | systemctl reenable dienst.service | ||
- | |||
- | == sysVinit kompatibel == | ||
- | chkconfig dienst on | ||
=== Dienst sofort, einmalig beenden === | === Dienst sofort, einmalig beenden === | ||
Zeile 85: | Zeile 108: | ||
== systemd nativ == | == systemd nativ == | ||
systemctl disable dienst.service | systemctl disable dienst.service | ||
- | |||
- | == sysVinit kompatibel == | ||
- | chkconfig dienst off | ||
=== Dienst maskieren === | === Dienst maskieren === | ||
Zeile 99: | Zeile 119: | ||
systemctl list-units --type service --state=failed --all | systemctl list-units --type service --state=failed --all | ||
systemctl list-unit-files -t service | systemctl list-unit-files -t service | ||
- | systemctl is-enable service | + | systemctl is-enabled dienst.service |
- | systemctl is-active service | + | systemctl is-active dienst.service |
== sysVinit kompatibel == | == sysVinit kompatibel == | ||
Zeile 121: | Zeile 141: | ||
systemctl hibernate | systemctl hibernate | ||
systemctl hybrid-sleep | systemctl hybrid-sleep | ||
+ | |||
+ | == alle Units (Serices, ...) eines Targets anzeigen == | ||
+ | systemctl list-dependencies graphical.target | ||
===== Startoptionen eines Dienstes ändern ===== | ===== Startoptionen eines Dienstes ändern ===== | ||
cp -a /lib/systemd/system/dienst.service /etc/systemd/system/ | cp -a /lib/systemd/system/dienst.service /etc/systemd/system/ | ||
vim /etc/systemd/system/dienst.service | vim /etc/systemd/system/dienst.service | ||
+ | |||
+ | Besser | ||
+ | systemctl edit dienst.service | ||
+ | oder (für eigene units) | ||
+ | systemctl edit --full dienst.service | ||
+ | |||
+ | Syntax prüfen: | ||
+ | systemd-analyze verify dienst.service | ||
Änderungen anzeigen: | Änderungen anzeigen: | ||
systemd-delta | systemd-delta | ||
- | Änderungen aktivieren: | + | Änderungen aktivieren (nicht notwendig bei ''edit'') |
systemctl daemon-reload | systemctl daemon-reload | ||
Zeile 154: | Zeile 185: | ||
* [[Systemd-Prozesse]] | * [[Systemd-Prozesse]] | ||
* [[Systemd-Resourcenkontrolle]] | * [[Systemd-Resourcenkontrolle]] | ||
+ | * [[Systemd-Security]] | ||
== Powersave verhindern == | == Powersave verhindern == | ||
Zeile 169: | Zeile 201: | ||
===== Beispiele ===== | ===== Beispiele ===== | ||
* [[Systemd Service Unit Files]] | * [[Systemd Service Unit Files]] | ||
+ | * [[Systemd Path Unit Files]] | ||
===== Doku ===== | ===== Doku ===== | ||
+ | * [[https://www.freedesktop.org/wiki/Software/systemd/|Offizielle Doku auf freedesktop]] | ||
+ | * [[http://0pointer.net/blog/|PID 1 Blog von Poettering (nicht verbindlich)]] | ||
+ | |||
+ | ---- | ||
+ | |||
* [[https://cre.fm/cre209-das-linux-system|CRE Interview mit Lennart]] | * [[https://cre.fm/cre209-das-linux-system|CRE Interview mit Lennart]] |