Diskussion:Linux/Prozesse
nohup
- Prozess abnabeln
nohup COMMAND [ARG]...
Das von nohup gestartete Kommando läuft unabhängig von der aktiven Shell. D.h. ein so gestartetes Kommando arbeitet auch nach dem Beenden der Sitzung (logout) weiter. Die Ausgaben von nohup werden ggf. in eine Datei nohup.out umgeleitet. Kann diese im aktuellen Verzeichnis nicht erzeugt werden, wird sie im Heimatverzeichnis angelegt. Scheitert auch dies, beendet nohup seine Tätigkeit. Ein über nohup gestartetes Kommando erhält eine um 5 erhöhte Priorität.
bash
./sleepproc& [1] 776 exit ps eax | grep spleepproc bash nohup ./sleepproc& [1] 786 exit ps eax | grep spleepproc 786 ? S N 0:00 sh ./sleepproc...
Anmerkung
Im Beispiel wird in einer Subshell ein Skript "sleepproc" gestartet und die Shell beendet. Wie zu erwarten war, wurde der in der Shell gestartete Prozess mit dem Ende der Shell beendet. In einem zweiten Schritt wird das Skript "sleepproc" unabhängig von der Shell gestartet... es existiert auch nach Beendigung der Shell weiter.
1.2 renice
- Prozesspriorität ändern
renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
Prozessen kann mittels renice nachträglich eine andere Priorität zugeteilt werden. Wie auch bei nice gilt, dass einzig Root die Priorität erhöhen darf.
Beispiel
renice +10 23258
23258: Alte Priorität: 0, neue Priorität: 10 renice -10 23258 renice: 23258: setpriority: Keine Berechtigung
Das Kommando erlaubt das gleichzeitige Verändern der Prioritäten mehrerer Prozesse. Mögliche Angaben sind: Mehrere Process-IDs, -g GID Die Gruppennummer von Prozessen, -u Nutzer Der Besitzer der Prozesse
1.1 nice
- Prozess mit anderer Priorität
nice [OPTION]... [COMMAND [ARG]...]
Ein zu startendes Kommando kann durch nice eine andere als die voreingestellte Priorität gegeben werden. D.h. im Vergleich zur "normalen Priorität" erhält ein solcher Prozess prozentual weniger/mehr Rechenzeit zugeteilt. Ein Wert von -20 bedeutet dabei die höchste Priorität; ein Wert von 20 die geringste. Ein normaler Nutzer darf die Priorität eines Prozesses nur verringern (also den Wert erhöhen), nur Root kann diese erhöhen (den Wert verringern). Beispiel
nice -n 19 gcc bigprogram.c
root@sonne> nice -n -10 inetd
Mit renice kann die Priorität eines laufenden Prozesses beeinflusst werden.
1.2 renice
- Prozesspriorität ändern
renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
Prozessen kann mittels renice nachträglich eine andere Priorität zugeteilt werden. Wie auch bei nice gilt, dass einzig Root die Priorität erhöhen darf.
Beispiel
renice +10 23258
23258: Alte Priorität: 0, neue Priorität: 10 renice -10 23258 renice: 23258: setpriority: Keine Berechtigung