1. Команда ps — статический взгляд на процессы
Если бы Linux был рестораном, то процесс был бы шеф-поваром на кухне. Это исполняемый экземпляр программы, который существует в памяти. Когда вы запускаете приложение или исполнение файла из командной строки, создаётся процесс, который затем выполняет свои задачи до завершения.
С точки зрения программирования, процессы управляются ядром Linux, и у каждого из них есть уникальный идентификатор — PID (Process ID).
Команда ps (process status) — это базовая команда для просмотра списка процессов. Она даёт статический снимок текущих процессов в системе. Используя ps, можно получить информацию о запущенных процессах: их ID, хозяине (владельце), командной строке, использованных ресурсах.
Основной синтаксис
Вот как выглядит базовая команда:
ps
Это покажет процессы, запущенные в текущем терминале.
Но так скучно! Давайте добавим немного специй:
ps aux
Здесь:
a— показывает процессы других пользователей.u— добавляет более удобный для чтения формат.x— включает процессы, которые не привязаны к терминалу.
Пример вывода:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 22556 1044 ? Ss 12:34 0:01 /sbin/init
student 2345 0.1 0.2 34567 2048 pts/0 S+ 12:35 0:02 bash
student 4567 0.3 0.5 56789 5144 pts/0 R+ 12:36 0:03 ps aux
- USER: пользователь, запустивший процесс.
- PID: идентификатор процесса.
- %CPU: процент использования CPU.
- %MEM: процент использования памяти.
- COMMAND: команда, вызвавшая процесс.
Расширенные опции
Посмотрим древовидную структуру процессов:
ps -ejHЭто поможет понять, какие процессы являются "детями" других процессов.
Фильтрация по PID:
ps -p 1234Где
1234— ваш PID. Выводит только указанный процесс.Вывод всех процессов вместе с полным коммандлайном:
ps -ef
2. Команда top — динамический мониторинг процессов
top — это как телевизор для процессов. Вы можете наблюдать, как процессы меняются в реальном времени. Если вы запускаете сервер или ваш компьютер начал "тормозить", top — ваш лучший друг. Через него вы увидите, какие процессы едят больше всего CPU и памяти.
Основы использования
Просто введите в терминале:
top
Пример вывода:

- Верхняя строка показывает "нагрузку" на систему.
- Средняя часть сообщает о задачах (всего, активных, спящих, зомби).
- Нижняя часть посвящена памяти.
- Нижний блок — это список процессов, где много полезной информации, включая PID, USER, %CPU и COMMAND.
Навигация в top
- Нажмите
k, чтобы завершить процесс. Введите PID. - Нажмите
P, чтобы отсортировать процессы по CPU. - Нажмите
M, чтобы отсортировать по использованию памяти. - Нажмите
q, чтобы выйти.
3. Утилита htop — удобный интерфейс
Если top кажется вам слишком "сырым", добро пожаловать в htop. Это визуальный интерфейс для мониторинга процессов. Он цветной, поддерживает мышь и по-человечески понятен.
Установка
Если htop не установлен, добавьте его:
sudo apt-get install htop # Для дистрибутивов на основе Debian
sudo yum install htop # Для дистрибутивов на основе RedHat
Запуск
Чтобы запустить htop, просто введите:
htop
Пример интерфейса:

Преимущества htop:
- Возможность прокрутки списка процессов.
- Выделение цветов для CPU, памяти, swap.
- Удобные клавиши для завершения процессов (например,
F9).
4. Практическое задание
Задача 1: Найдите самый "жадный" процесс
- Откройте
topилиhtop. - Отсортируйте процессы по CPU и узнайте его PID.
Задача 2: Завершите процесс
- Используйте
kill, чтобы "прибить" процесс:kill <PID>
Задача 3: Анализ процесса
- Используйте
psдля анализа PID процесса:ps -p <PID> -o pid,user,%cpu,%mem,cmd
Подводные камни и рекомендации
- Не убивайте процессы, если вы не уверены, что они не критичны для работы системы. Например, процесс с PID 1 — это init, основа ОС.
- Утилита
htopдолжна быть установлена отдельно, если её нет. Если команда не запускается, проверьте установку. - Будьте внимательны с правами. Завершение процессов, запущенных под другим пользователем, может потребовать прав администратора.
На практике вы увидите, что эти инструменты делают работу с Linux невероятно гибкой и наглядной. Теперь вы босс процессов!
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ