У меня одноядерный VPS со средней нагрузкой, которая иногда превышает 25. Когда он достигает этого, он становится невыносимо медленным, и даже команды выполняются dash
, что быстрее и использует меньше оперативной памяти, чем bash
, для запуска требуется некоторое время. Как я могу отследить, какой процесс вызывает высокую нагрузку?
command-line
cpu-load
NerdOfLinux
источник
источник
sudo apt install htop
дает вам полезный инструмент текстового режима для этой цели (более удобный для пользователя, чем стандартныйtop
). Ноtop
это хорошо, если вы хотите небольшой отпечаток.Ответы:
Вы можете установить
htop
. Хорошая вещь оhtop
том, что он покажет вам ваше использование на процессор, а также содержательный текстовый график использования памяти и подкачки прямо вверху.Для установки
htop
:Начни это:
Нажмите,
F6
чтобы отсортировать процессы, затем с помощью навигационной клавиши вы можете выбратьPERCENT_CPU
и нажать Enter.Или вы можете использовать
top
таким образом ( источник ):источник
P
сортировку по использованию процессора,M
по памяти илиT
по времени, а такжеt
для возврата к схеме дерева.htop
имеет некоторую базовую поддержку мыши. Если вы нажмете на столбцы, это также позволит вам сортировать их (если я не ошибаюсь). Есть несколько других операций, которые работают с вашей мышью.Ниже просто украдено из Unix.SE: Найти процесс, который принимает максимальную загрузку процессора, если загрузка процессора превышает 60%? Хотя, конечно, адаптирован к этому вопросу.
список процессов по конкретному использованию процессора
Это дает список процессов, у которых есть загрузка ЦП
>0.0
%, вы можете изменить это значение в соответствии с вашими потребностями, например>50.0
. Каждая строка содержит загрузку процессора в процентах, PID и файл процесса.список процессов с наибольшим использованием процессора
Это показывает топ 5 (
NR<=5
) процессов, в настоящее время вызывающих наибольшую нагрузку на процессор.источник
Вчера я учился
awk
и играл с двумя другими ответами. Вот результат:Получить только процесс с наиболее высокой загрузкой процессора, используя
ps aux
:Получите три процесса с наиболее высокой загрузкой процессора, используя
top
:Получите три процесса с наиболее высокой загрузкой процессора, используя
ps aux
:Я пытался запустить последние две команды одновременно (с
<command>; wait; <command>
и<command> & <command> &
), но потом понял, что это невозможно вообще :)Ссылки:
источник
NR>=2
- оказывается,ps
предоставляет опцию,h
которая пропускает строку заголовка, см. Мой обновленный ответ.NR>=2
, ноNR>1
коротко :) Я обновил ответ.Используйте
top
командуисточник
хороший учебник YouTube
источник