Changer la finesse (priorité) d'un processus en cours d'exécution

75

Est-il possible de définir un nouveau niveau nice d'un processus en cours d'exécution avec un identifiant connu?

Cette opération nécessite-t-elle un accès root ou simplement le propriétaire du processus?

    
posée Adam Matan 14.06.2011 - 14:09
la source

6 réponses

70

Terminal

Si vous êtes dans un terminal, vous pouvez utiliser renice

renice [-n] priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

Un exemple simple serait

renice 8 31043
31043: old priority 5, new priority 8

Vous pouvez également lui transmettre des drapeaux, mais il suit cet ordre (vous devez d'abord passer la priorité, puis le pid - si vous changez l'ordre dans lequel il affichera le message d'utilisation)

renice -n 5 -p 31043
31043: old priority 8, new priority 5

Les priorités fonctionnent sur une échelle de -20 à 19 - Plus le nombre est faible, plus la priorité est élevée sur le système.

Si vous possédez le processus, vous n'aurez pas besoin de root - cependant, si le processus appartient à un autre utilisateur ou si vous envisagez de changer le groupe / utilisateur de la racine du processus (via sudo ) sera requis.

    
réponse donnée Marco Ceppi 14.06.2011 - 14:22
la source
33

GUI

  • Alt + F2 et tapez sudo gnome-system-monitor

Avant 11.04: System & gt; Administration & gt; Moniteur système Choisissez les processus.
Dans 11.04: Alt + A et recherchez system monitor .

Les identifiants sont affichés dans l'image ici:

Et nice ne nécessite pas sudo pour plus de finesse si vous possédez la tâche. C'est le cas si vous avez besoin de diminuer la gentillesse.

    
réponse donnée Rinzwind 14.06.2011 - 14:14
la source
10

Lancer une commande avec nice prio

nice -n 19 your_command

Renice process

renice 19 $(pidof your_command_name_like_for_ex_ffmpeg)

19

entre -20 et 19

19 est la priorité la plus basse

    
réponse donnée Philippe Gachoud 26.09.2013 - 10:52
la source
8

L'utilisation de "renice" dans le terminal est la suivante:

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

L'utilisation de "sudo" avant la commande "renice" élève l'utilisateur au niveau racine et un mot de passe admin / root sera requis.

Ainsi, par exemple Si vous souhaitez élever le processus avec le PID (ID de processus) 2606 de la priorité Normale à la priorité Elevé , vous devez taper le terminal comme suit: / p>

sudo renice -n -5 -p 2606
    
réponse donnée user141344 18.03.2013 - 13:44
la source
3

Vous pouvez également renommer un processus en haut.

1) Début haut

$ top

2) rénifier en appuyant sur r . Vous serez invité à saisir l'ID de processus (PID) du processus que vous souhaitez renommer. Le PID par défaut est le premier processus (celui qui consomme le plus de ressources). Confirmez avec Entrée. Définissez la nouvelle valeur de base de -20 (priorité supérieure) à +19 (priorité inférieure).

    
réponse donnée Timothy Pulliam 09.01.2017 - 17:09
la source
1

htop

  1. Démarrer htop
  2. Renice avec F7 / F8 (si vous êtes dans Byobu désactiver temporairement les raccourcis avec Maj + F12 ). Gardez à l'esprit que vous avez besoin de privilèges root pour réduire la convivialité .

réponse donnée Pablo Bianchi 02.08.2018 - 17:06
la source

Lire d'autres questions sur les étiquettes