Ist es möglich, eine neue nice
Stufe eines laufenden Prozesses mit einer bekannten ID festzulegen?
Benötigt dieser Vorgang Root-Zugriff oder ist er lediglich der Eigentümer des Prozesses?
Ist es möglich, eine neue nice
Stufe eines laufenden Prozesses mit einer bekannten ID festzulegen?
Benötigt dieser Vorgang Root-Zugriff oder ist er lediglich der Eigentümer des Prozesses?
Antworten:
Wenn Sie an einem Terminal sind, können Sie verwenden renice
renice [-n] priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
Ein einfaches Beispiel wäre
renice 8 31043
31043: old priority 5, new priority 8
Sie können auch harte Flags übergeben, aber es folgt dieser Reihenfolge (Sie müssen zuerst die Priorität und dann die PID übergeben - wenn Sie die Reihenfolge ändern, wird die Nutzungsnachricht angezeigt)
renice -n 5 -p 31043
31043: old priority 8, new priority 5
Prioritäten arbeiten auf einer Skala von -20
bis 19
- Je niedriger die Zahl, desto höher ist die Priorität des Systems.
Wenn Sie den Prozess besitzen, benötigen Sie kein Root-Konto. Wenn der Prozess jedoch einem anderen Benutzer gehört oder wenn Sie beabsichtigen, die Gruppe / den Benutzer des Prozess-Root-Kontos (über sudo
) zu ändern, ist dies erforderlich.
root
nur erhöhen - sie können die Feinheit nicht verringern, nicht einmal auf ein vorheriges Feinheitsniveau, das der Prozess hatte, und nicht einmal auf ein vorheriges Feinheitsniveau, von dem sie selbst renice
den Prozess herabgesetzt hatten. Ich empfehle, diese Antwort zu bearbeiten, um diese Informationen einzubeziehen.
sudo gnome-system-monitor
Vor 11.04: System> Administration> Systemmonitor. Wählen Sie Prozesse.
In 11.04: Alt+ Aund suche nach system monitor
.
Die IDs sind im Bild hier gezeigt:
Und nice benötigt kein sudo, um die Feinheit zu erhöhen, wenn Sie die Aufgabe besitzen. Dies ist der Fall, wenn Sie die Schönheit verringern müssen.
nice -n 19 your_command
renice 19 $(pidof your_command_name_like_for_ex_ffmpeg)
zwischen -20 und 19
19 ist die niedrigste Priorität
Die Verwendung von "renice" im Terminal ist wie folgt:
Usage:
renice [-n] <priority> [-p] <pid> [<pid> ...]
renice [-n] <priority> [-g] <pgrp> [<pgrp> ...]
renice [-n] <priority> [-u] <user> [<user> ...]
Options:
-g, --pgrp <id> interpret as process group ID
-h, --help print help
-n, --priority <num> set the nice increment value
-p, --pid <id> force to be interpreted as process ID
-u, --user <name|id> interpret as username or user ID
-v, --version print version
Die Verwendung von "sudo" vor dem Befehl "renice" erhöht den Benutzer auf die Root-Ebene und erfordert ein Administrator- / Root-Passwort.
Wenn Sie z. B. den Prozess mit der PID (Prozess-ID) 2606 von der normalen Priorität auf die hohe Priorität erhöhen möchten , geben Sie das Terminal folgendermaßen ein:
sudo renice -n -5 -p 2606
Sie können einen Vorgang auch innerhalb von top wiederholen.
1) Oben anfangen
$ top
2) Renice durch Drücken von r
. Sie werden aufgefordert, die Prozess-ID (PID) des Prozesses einzugeben, den Sie erneut ausführen möchten. Die Standard-PID ist der erste Prozess (einer, der die meisten Ressourcen verbraucht). Bestätigen Sie mit Enter. Stellen Sie den neuen Nizza-Wert von -20 (höhere Priorität) bis +19 (niedrigere Priorität) ein.
htop
htop
Renice mit F7/ F8(wenn Sie sich in Byobu befinden, deaktivieren Sie die Verknüpfungen mit Shift + F12). Denken Sie daran, dass Sie Root-Rechte benötigen, um die Feinheit zu verringern .