Systemd cgroups Servicedateien bearbeiten: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „*Lassen Sie uns die Unit-Datei selbst bearbeiten. *Dazu habe ich eine sehr einfache Unit-Datei erstellt, die ein Skript ausführt: ==Unit Datei== */etc/systemd…“) |
|||
| Zeile 1: | Zeile 1: | ||
| + | =ToDo= | ||
*Lassen Sie uns die Unit-Datei selbst bearbeiten. | *Lassen Sie uns die Unit-Datei selbst bearbeiten. | ||
*Dazu habe ich eine sehr einfache Unit-Datei erstellt, die ein Skript ausführt: | *Dazu habe ich eine sehr einfache Unit-Datei erstellt, die ein Skript ausführt: | ||
| − | + | =Unit Datei= | |
*/etc/systemd/system/generate-load.service | */etc/systemd/system/generate-load.service | ||
<pre> | <pre> | ||
Version vom 15. Januar 2023, 09:11 Uhr
ToDo
- Lassen Sie uns die Unit-Datei selbst bearbeiten.
- Dazu habe ich eine sehr einfache Unit-Datei erstellt, die ein Skript ausführt:
Unit Datei
- /etc/systemd/system/generate-load.service
[Service] Type=oneshot ExecStart=/usr/local/bin/generate_load.sh TimeoutSec=0 StandardOutput=tty RemainAfterExit=yes [Install] WantedBy=multi-user.target
Das Skript
- cat /usr/local/bin/generate_load.sh
#!/bin/bash /usr/bin/cat /dev/urandom > /dev/null &
Starten des Dienstes
- systemcl start generate-load.service
- systemd-cgls
Control group /: ... └─system.slice ├─prog.service │ └─47462 netcat -lp 99 -s 127.0.0.1 ├─systemd-udevd.service │ └─212 /lib/systemd/systemd-udevd ├─cron.service │ └─296 /usr/sbin/cron -f ├─systemd-journald.service │ └─192 /lib/systemd/systemd-journald ├─ssh.service │ └─410 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups ├─rsyslog.service │ └─303 /usr/sbin/rsyslogd -n -iNONE ├─generate-load.service │ └─50387 /usr/bin/cat /dev/urandom ...
Eigener Slice
- Was passiert, wenn ich der systemd-Dienstdatei die folgende Zeile hinzufüge?
Slice=my-beautiful.slice
- Die Ausgabe von systemd-cgls zeigt etwas Merkwürdiges. Der generate-load.service ist nun tief verschachtelt:
- systemd-cgls
Control group /: -.slice ├─my.slice │ └─my-beautiful.slice │ └─my-beautiful.slice │ └─generate-load.service │ └─53737 /usr/bin/cat /dev/urandom
- Warum ist das? Die Antwort hat damit zu tun, wie systemd verschachtelte cgroups interpretiert.
- Kinder werden folgendermaßen deklariert: -.slice. Da systemd versucht, hilfreich zu sein, wenn ein übergeordnetes Element nicht existiert, erstellt systemd es für Sie.
- Wenn ich Unterstriche _ anstelle von Bindestrichen verwendet hätte, wäre das Ergebnis so gewesen, wie Sie es erwartet hätten: