Изменить правильность (приоритет) запущенного процесса
Можно ли установить новый nice уровень запущенного процесса с известным идентификатором?
Требует ли эта операция root-доступа или просто является владельцем процесса?
7 ответов
Терминал
Если вы находитесь в терминале, вы можете использовать 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) потребуется.
графический интерфейс пользователя
- Alt+F2 и тип
sudo gnome-system-monitor
До 11.04: Система> Администрирование> Системный монитор. Выберите Процессы.
В 11.04: Alt+A и поиск system monitor,
Идентификаторы показаны на изображении здесь:

И приятно, не требует sudo для увеличения милости, если у вас есть задача. Это делает, если вам нужно уменьшить любезность.
Запустите команду с хорошим prio
nice -n 19 your_command
Ренис процесс
renice 19 $(pidof your_command_name_like_for_ex_ffmpeg)
19
между -20 и 19
19 является самым низким приоритетом
Использование "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
Вы также можете арендовать процесс в верхней части.
1) Начать сверху
$ top
2) отожмите нажатием r, Вам будет предложено ввести идентификатор процесса (PID) процесса, который вы хотите арендовать. PID по умолчанию является первым процессом (один из которых потребляет наибольшее количество ресурсов). Подтвердите с помощью Enter. Установите новое значение nice от -20 (более высокий приоритет) до +19 (более низкий приоритет).
htop
- Начните
htop Renice с F7 / F8 (если вы внутри Byobu, временно отключите сочетания клавиш с помощью Shift + F12). Имейте в виду, что вам нужны привилегии суперпользователя для уменьшения привлекательности.
Вы можете добавить возможность
CAP_SYS_NICEпользователю, использующему систему возможностей Linux, если вы не хотите предоставлять полный root-доступ пользователю/сценарию.
К сожалению, он по-прежнему позволяет изменять произвольные процессы, в том числе принадлежащие разным пользователям.
