← Назад к вопросам

Зачем нужна команда htop в Linux?

1.0 Junior🔥 111 комментариев
#DevOps и инфраструктура

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI22 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Зачем нужна команда htop в Linux

htop — это интерактивный инструмент мониторинга процессов и ресурсов в Linux. Это улучшенная версия встроенной команды top.

Что показывает htop

htop отображает в реальном времени:

- Использование CPU (процессора)
- Использование памяти (RAM)
- Использование SWAP
- Список запущенных процессов
- Идентификатор процесса (PID)
- Приоритет процесса
- Время выполнения процесса
- Процент CPU и памяти для каждого процесса

Основное использование

1. Поиск проблем с производительностью

# Запуск
htop

# Видишь процесс Python, который съедает 90% CPU?
# Проблема в цикле или алгоритме

2. Отслеживание утечек памяти

htop

# Видишь, что процесс Java растёт с 1GB до 5GB?
# Есть утечка памяти

3. Поиск «зависших» процессов

htop

# Процесс имеет статус Z (зомби) или D (ожидание ввода-вывода)?
# Нужно килить или перезагружать

Сравнение top vs htop

Функцияtophtop
ИнтерактивностьБазоваяПолная
ДизайнТекстовыйЦветной, удобный
НавигацияСтрелки и командыИнтуитивные горячие клавиши
Горизонтальная прокруткаНетЕсть
Tree (древовидное отображение)НетЕсть
Фильтрация процессовСложнаяПростая
Поиск по имениСложныйВстроенная функция

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

1. Найти процесс Python, съедающий CPU

htop
# В главном экране сразу видно, какой процесс грузит систему
# Нажать P (сортировка по CPU)

2. Убить зависший процесс

htop
# Выбрать процесс (стрелками)
# Нажать K (kill signal)
# Выбрать сигнал: 9 (SIGKILL) или 15 (SIGTERM)

3. Отследить количество потоков в приложении

htop
# Найти основной процесс
# Нажать T (tree view) — видны все дочерние потоки

4. Мониторить использование памяти в реальном времени

htop -p 1234
# Отслеживать только процесс с PID 1234
# Полезно для долгоживущих приложений

Горячие клавиши в htop

F1 или h    — Справка
F3 или /    — Поиск по имени процесса
F4 или \    — Фильтр (показать только определённые процессы)
F5 или t    — Tree view (иерархия процессов)
F6 или <,> — Выбор колонки для сортировки
F9 или k    — Kill (убить процесс)
F10 или q   — Выход

P           — Сортировка по CPU
M           — Сортировка по памяти
T           — Сортировка по времени выполнения
u           — Фильтр по пользователю
z           — Вкл/выкл цвета

Примеры команд в терминале

Просмотр всех процессов

htop

Просмотр процессов конкретного пользователя

htop -u username

Просмотр конкретного процесса

htop -p 1234  # PID 1234
htop -p 1234,5678,9012  # Несколько PID

Отмониторить Java приложение

htop -p $(pgrep java)

Отмониторить все Python процессы

htop -u $(whoami)  # Все процессы текущего пользователя

Использование для Python разработчика

1. Отследить утечки памяти в скрипте

# Терминал 1: запустить скрипт
python my_script.py

# Терминал 2: открыть htop
htop -p $(pgrep python)
# Смотреть, растёт ли RES (реальная память)

2. Оптимизировать параллельную обработку

# script.py с asyncio
import asyncio

async def fetch_data():
    tasks = [asyncio.sleep(1) for _ in range(100)]
    await asyncio.gather(*tasks)

# В htop видно, сколько потоков / работников используется
htop -p $(pgrep -f 'python script.py')
# Видно: сколько CPU используется, сколько памяти

3. Поиск проблем с многопроцессностью

from multiprocessing import Pool

with Pool(4) as p:  # 4 worker процесса
    results = p.map(cpu_intensive_task, data)

# В htop видно ровно 4 дочерних процесса Python

Система мониторинга в production

В production обычно используют более мощные инструменты:

# Установка htop
sudo apt-get install htop      # Debian/Ubuntu
sudo yum install htop          # CentOS/RHEL
brew install htop              # macOS

# На сервере часто используют:
htop (интерактивный)
top (стандартный)
Watch (повторный запуск команды)
strace (отслеживание системных вызовов)
dstat (расширенная статистика)
prometheus + grafana (мониторинг)

Практические советы

# Установить формат вывода
export PAGER=less
htop

# Запустить в non-interactive режиме (для скриптов)
htop -b -n 1  # Одна итерация, вывод в файл/pipe

# Экспортировать в файл
htop -b -n 1 > htop_output.txt

Вывод: htop — это essential инструмент для быстрой диагностики проблем с производительностью в Linux. Она показывает в реальном времени, что грузит CPU и память, какие процессы зависли, и позволяет быстро их закрыть. Для Python разработчика это необходимо при отладке производительности и поиске утечек памяти.

Зачем нужна команда htop в Linux? | PrepBro