94 votes

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

Est-il possible de définir une nouvelle nice d'un processus en cours avec un identifiant connu ?

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

87voto

Redbaron Points 523

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 aussi lui passer des drapeaux durs, mais il suit cet ordre (vous devez passer la priorité d'abord et ensuite le pid - si vous changez l'ordre, 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 numéro est bas, plus la priorité est élevée dans le système.

Si vous êtes le propriétaire du processus, vous n'aurez pas besoin de root - cependant, si le processus appartient à un autre utilisateur ou si vous prévoyez de changer le groupe/utilisateur du processus, root (par l'intermédiaire de sudo ) seront nécessaires.

35voto

Rinzwind Points 270388

GUI

  • Alt + F2 et le type sudo gnome-system-monitor

Avant la version 11.04 : Système > Administration > Moniteur système. Choisissez Processus.
En 11.04 : Alt + A et chercher system monitor .

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

enter image description here

Et nice ne nécessite pas sudo pour augmenter la gentillesse si vous possédez la tâche. Il le fait si vous avez besoin de diminuer la gentillesse.

12voto

Philippe Gachoud Points 5360

Commencez une commande avec nice :

nice -n 19 your_command

Processus de Renice :

renice 19 $(pidof your_command_name_like_for_ex_ffmpeg)

La priorité pourrait se situer entre -20 et 19. 19 est la priorité la plus basse.

8voto

user141344 Points 81

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 de root et un mot de passe admin/root sera requis.

Donc, par exemple, si vous voulez élever le processus avec PID (process ID) 2606 de Normal priorité à Haut vous devez taper dans le terminal comme suit :

sudo renice -n -5 -p 2606

3voto

Timothy Pulliam Points 131

Vous pouvez également renier un processus au sein de top.

  1. Top départ

    $ top
  2. Renice en appuyant sur r . Le système vous demande de saisir l'ID de processus (PID) du processus que vous souhaitez renier. Le PID par défaut est le premier processus (celui qui consomme le plus de ressources). Confirmez avec Enter. Définissez la nouvelle valeur agréable de -20 (priorité supérieure) à +19 (priorité inférieure).

    screenshot

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X