У меня есть одноядерный VPS со средним числом загрузки, которое идет вне 25 время от времени. Когда это достигает этого, это становится невыносимо медленным, и даже управляет, пробегает dash
, который быстрее и использует меньше RAM, чем bash
, требует времени к выполненному. Как я могу разыскать, какой процесс вызывает высокую загрузку?
Можно установить htop
. Хорошая вещь о htop
это, это покажет Вам Ваше использование на ЦП, а также график значимого текста Вашей памяти и подкачает право использования наверху.
Устанавливать htop
:
sudo apt-get install htop
Запустите его:
htop
Пресса F6
для сортировки процессов затем с помощью клавиши навигации, можно выбрать PERCENT_CPU
и нажмите Enter.
Или можно использовать top
таким образом (источник):
top -b -n 1 | head -n 12
Ниже просто украден от Unix. SE: Найдите процесс, который берет максимальное использование ЦП, если использование ЦП составляет больше чем 60%?, хотя, конечно, адаптированный к этому вопросу.
ps ahux --sort=-c | awk '{if($3>0.0)printf"%s %6d %s\n",$3,$2,$11}'
Это дает список процессов, которые имеют использование ЦП >0.0
%, можно изменить это значение согласно потребностям, например. >50.0
. Каждая строка содержит использование ЦП в проценте, PID и файле процесса.
ps ahux --sort=-c | awk 'NR<=5{printf"%s %6d %s\n",$3,$2,$11}'
Это показывает лучшие 5 (NR<=5
) процессы, в настоящее время вызывающие большую часть загрузки ЦП.
Вчера я учился awk
и я играл с другими двумя ответами. Вот результат:
Получите только процесс с самым более высоким использованием ЦП, с помощью ps aux
:
ps auxh | awk -v max=0 '{if($3>max){CPU=$3; PID=$2; NAME=$11; max=$3}} END{printf "%5s %6d %s\n",CPU,PID,NAME}'
Получите три процесса с самым более высоким использованием ЦП, с помощью top
:
top -b -n 1 | awk 'NR>7 && NR<11 {printf "top: %5s %6d %s %s\n",$9,$1,$12,$13}'
Получите три процесса с самым более высоким использованием ЦП, с помощью ps aux
:
ps auxh --sort=-c | awk 'NR<=3 {printf "ps: %5s %6d %s\n",$3,$2,$11}'
Я попытался выполнить последние две команды одновременно (с <command>; wait; <command>
и <command> & <command> &
), но затем я понял, что это не возможно вообще :)
Ссылки:
Использовать top
команда
top
- отобразите процессы LinuxГлавная программа обеспечивает динамическое представление в реальном времени рабочей системы. Это может отобразить системную информацию о сводке, а также список процессов или потоков, в настоящее время управляемых ядром Linux. Типы системной показанной информации о сводке и типы, порядок и размер информации, отображенной для процессов, являются всем настраивающимся пользователем, и та конфигурация может быть сделана персистентной через перезапуски.