Изменить правильность (приоритет) запущенного процесса

80

Можно ли установить новый niceуровень запущенного процесса с известным идентификатором?

Требует ли эта операция root-доступа или просто является владельцем процесса?

Адам Матан
источник

Ответы:

76

Терминал

Если вы находитесь в терминале, вы можете использовать renice

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

Простой пример будет

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

Вы также можете передать ему жесткие флаги, но это следует за этим порядком (сначала нужно передать приоритет, а затем pid - если вы измените порядок, он покажет сообщение об использовании)

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

Приоритеты работы по шкале от -20до 19- Чем меньше число, тем выше это приоритет в системе.

Если вы являетесь владельцем процесса, вам не понадобится root - однако, если процесс принадлежит другому пользователю или если вы планируете изменить группу / пользователя root (через sudo), потребуется.

Марко Чеппи
источник
11
Вы не можете уменьшить милость как пользователя. :)
htorque
5
Как говорит @htorque, не rootпользователь может только увеличить благосклонность - он не может уменьшить благородство, даже до прежнего уровня благородства, которым обладал процесс, и даже до прежнего уровня благородства, с которого они сами reniceотказались от процесса. Я рекомендую отредактировать этот ответ, чтобы включить эту информацию.
Элия ​​Каган,
2
Есть ли минус в приоритете процесса -20?
Джеймс Уоткинс
2
@JamesWatkins Вы можете остановить свой компьютер
DarthRubik
33

графический интерфейс пользователя

  • Alt+ F2и типsudo gnome-system-monitor

До 11.04: Система> Администрирование> Системный монитор. Выберите Процессы.
В 11.04: Alt+ Aи ищем system monitor.

Идентификаторы показаны на изображении здесь:

введите описание изображения здесь

И приятно, не требует sudo для увеличения милости, если у вас есть задача. Это делает, если вам нужно уменьшить любезность.

Rinzwind
источник
10

Запустите команду с хорошим prio

nice -n 19 your_command

Процесс ренис

renice 19 $(pidof your_command_name_like_for_ex_ffmpeg)

19

между -20 и 19

19 является самым низким приоритетом

Филипп Гачу
источник
8

Использование «renice» в терминале выглядит следующим образом:

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

Использование «sudo» перед командой «renice» поднимает пользователя до уровня root, и потребуется пароль администратора / root.

Например, если вы хотите поднять процесс с PID (ID процесса) 2606 с обычного приоритета на высокий приоритет, вы должны ввести в терминале следующее:

sudo renice -n -5 -p 2606
user141344
источник
3

Вы также можете арендовать процесс в верхней части.

1) Начать сверху

$ top

2) отожмите нажатием r. Вам будет предложено ввести идентификатор процесса (PID) процесса, который вы хотите арендовать. PID по умолчанию является первым процессом (один из которых потребляет наибольшее количество ресурсов). Подтвердите с помощью Enter. Установите новое значение nice от -20 (более высокий приоритет) до +19 (более низкий приоритет).

введите описание изображения здесь

Тимоти Пулиам
источник