Команду nice
можно использовать для управления приоритетами планирования ЦП процесса . Команде присваивается процессу значение «правильности» от -20 (наиболее важно) до +19 (наименее важно). Root может присвоить любое значение, другие пользователи - только положительные (незначительное значение). Значением по умолчанию является 0.
nice -n <niceness> <command>
Чтобы установить для приоритета команды apt-get минимальное значение, вы можете использовать команду
sudo nice -n 19 apt-get upgrade
Чтобы установить приоритет уже запущенного процесса, renice
можно использовать команду :
renice -n <niceness> -p <pid>
Редактировать: Спасибо @David за упоминание ionice
команды, которая позволяет вам манипулировать приоритетом дискового ввода-вывода . Это может поместить процесс в три различных класса:
- Режим бездействия дает только время на диске процесса, если никакой другой процесс не требует его в данный момент.
- Лучшее усилие (класс по умолчанию). Это позволяет назначать приоритеты от 0 до 7, где 0 является наиболее важным, а 7 - наименьшим. Вы можете попробовать назначить
-n 7
уровень приоритета.
- Процессы реального времени обрабатываются раньше всего, приостанавливая дисковый ввод-вывод для других процессов, как только они сами этого требуют. Используйте с осторожностью!
IOnice сочетает в себе синтаксис nice и renice:
ionice [-c class] [-n level] command #To start a new process
ionice [-c class] [-n level] -p pid #To change a running process
Обе команды могут быть объединены, например,
sudo ionice -n 7 nice -n 19 apt-get upgrade #Omitting the -c switch will assign Best-effort
sudo nice -n 19 ionice -n 7 apt-get upgrade
nice -n 19 ionice -n 7 sudo apt-get upgrade
...
ionice
?sudo
в вашей команде не дляnice
, а дляapt-get
себя? Кажется, этоnice -n 19 sudo apt-get upgrade
также работает для меня. Есть ли важное отличие?sudo nice apt-get
работает как root и позволит установить более низкие приоритеты, чем 0. apt-get все равно будет работать как root.nice sudo apt-get
будет работать хорошо как текущий пользователь и, таким образом, разрешит только приоритеты выше или равные 0. apt-get будет запущен от имени пользователя root.