Diskussion:Linux/Prozesse

Aus Foxwiki

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