Benutzer-Werkzeuge

Webseiten-Werkzeuge


workshop:cli:systemd-run

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

workshop:cli:systemd-run [2025/02/16 09:22] – angelegt Branislav Zeljakworkshop:cli:systemd-run [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1
Zeile 1: Zeile 1:
-====== systemd-run - Führt einen Befehl als systemd-Dienst aus ====== 
- 
-Der Befehl **systemd-run** ermöglicht es, einen Prozess als temporären **systemd**-Dienst auszuführen. Dies ist besonders nützlich, um einen Befehl im Hintergrund laufen zu lassen und von **systemd** verwalten zu lassen, ohne eine vollständige Service-Einheit erstellen zu müssen. Es kann auch verwendet werden, um Befehle mit bestimmten Ressourcenbeschränkungen oder Prioritäten auszuführen. 
- 
-===== Syntax ===== 
-<code bash> 
-systemd-run [Optionen] [Befehl] [Argumente] 
-</code> 
- 
----- 
- 
-===== Wichtige Optionen ===== 
-^ Option ^ Beschreibung ^ 
-| `--unit=NAME`       | Gibt einen Namen für die zu erstellende Unit an. Wenn dieser nicht angegeben wird, wählt **systemd** automatisch einen Namen. | 
-| `--description=TEXT`| Fügt eine Beschreibung für den temporären Dienst hinzu. | 
-| `--scope`           | Führt den Befehl als temporären "Scope" aus, wodurch der Prozess von **systemd** verwaltet, aber nicht als vollständiger Dienst behandelt wird. | 
-| `--quiet`           | Unterdrückt die Ausgabe des Befehls. | 
-| `--property=NAME=VALUE` | Setzt eine oder mehrere Eigenschaften für den temporären Dienst, wie Ressourcenbeschränkungen. | 
-| `--help`            | Zeigt die Hilfe für den Befehl an. | 
- 
----- 
- 
-===== Beispiele ===== 
-**Einen Befehl als temporären systemd-Dienst ausführen:** 
-<code bash> 
-systemd-run --unit=mytask sleep 600 
-</code> 
-Führt den Befehl `sleep 600` aus und verwaltet ihn als temporären systemd-Dienst mit dem Namen `mytask`. 
- 
-**Einen Befehl im Hintergrund ausführen und unterdrückt die Ausgabe:** 
-<code bash> 
-systemd-run --quiet --unit=mytask sleep 600 
-</code> 
-Führt den Befehl `sleep 600` im Hintergrund aus, ohne Ausgaben anzuzeigen, und verwaltet ihn als temporären systemd-Dienst. 
- 
-**Einen Befehl mit einer bestimmten Ressourceneinstellung ausführen:** 
-<code bash> 
-systemd-run --unit=mytask --property=MemoryMax=1G sleep 600 
-</code> 
-Führt den Befehl `sleep 600` mit einer maximalen Speicherauslastung von 1 GB als temporären systemd-Dienst aus. 
- 
-**Einen Befehl ohne vollständige Dienstdefinition ausführen (Scope):** 
-<code bash> 
-systemd-run --scope sleep 600 
-</code> 
-Führt den Befehl `sleep 600` aus, ohne ihn als vollständigen Dienst zu behandeln, sondern als temporären "Scope"-Prozess. 
- 
----- 
- 
-===== Hinweis ===== 
-- **systemd-run** ist sehr nützlich, wenn man einen Befehl im Hintergrund ausführen möchte, der nicht dauerhaft als Dienst laufen muss, aber dennoch von **systemd** verwaltet werden soll. 
-- Es bietet die Möglichkeit, Prozesse mit speziellen Ressourcenbeschränkungen (z. B. CPU oder Speicher) zu starten und stellt sicher, dass der Prozess im Kontext von **systemd** ausgeführt wird. 
- 
----- 
- 
-===== Alternativen ===== 
-Ähnliche Funktionen bieten direkte **systemd**-Unit-Dateien, wenn man dauerhaft einen Dienst einrichten möchte. Für einfachere, nicht persistente Aufgaben kann auch **nohup** oder **screen** verwendet werden. 
- 
----- 
- 
-===== Weitere Informationen ===== 
-Die Man-Page liefert detaillierte Informationen: 
-<code bash> 
-man systemd-run 
-</code>