Linux

Установка stress-ng в Linux: полный гайд по стресс-тестированию

Узнайте, как быстро установить и запустить stress-ng для комплексной проверки стабильности процессора, памяти и дисков. Пошаговые команды для популярных дистрибутивов Linux.

Обновлено 4 апреля 2026 г.
5-10 мин
Низкая
FixPedia Team
Применимо к:Ubuntu 20.04 / 22.04 / 24.04Debian 11 / 12Fedora 38+Arch Linux

Введение / Зачем это нужно

stress-ng — это современная замена классической утилите stress, разработанная специально для комплексной проверки стабильности Linux. Инструмент генерирует контролируемую нагрузку на процессор, оперативную память, дисковую подсистему, сеть и аппаратные кэши. Он незаменим при тестировании новых серверов, проверке стабильности разгона, валидации работы системы охлаждения или отладке планировщика задач ядра.

После выполнения этого гайда вы получите полностью готовую к работе утилиту и научитесь безопасно запускать стресс-тесты без риска необратимого зависания системы.

Требования / Подготовка

Перед началом убедитесь, что у вас есть:

  • Доступ к терминалу с правами суперпользователя (sudo или root)
  • Стабильное интернет-соединение для загрузки пакетов
  • Дистрибутив Linux на базе Debian, Ubuntu, Fedora, Arch или их производных

⚠️ Важно: Запуск длительных стресс-тестов на ноутбуках от сети без охлаждения может привести к троттлингу или аварийному отключению. Мониторьте температуру процессора параллельно с помощью sensors или htop.

Шаг 1: Обновление кэша пакетов

Прежде чем устанавливать новое ПО, синхронизируйте локальные индексы с репозиториями. Это предотвратит конфликты версий и ошибки «package not found».

# Для Debian/Ubuntu
sudo apt update

# Для Fedora/RHEL
sudo dnf check-update

# Для Arch/Manjaro
sudo pacman -Sy

Шаг 2: Установка через менеджер пакетов

stress-ng доступен в стандартных репозиториях большинства современных дистрибутивов. Выполните команду, соответствующую вашей системе:

# Debian/Ubuntu
sudo apt install stress-ng -y

# Fedora
sudo dnf install stress-ng -y

# Arch Linux
sudo pacman -S stress-ng --noconfirm

Пакет автоматически разрешит зависимости и скопирует бинарные файлы в /usr/bin/.

Шаг 3: Проверка корректности установки

Убедитесь, что утилита успешно встала и доступна в переменной окружения $PATH.

stress-ng --version

Вывод должен содержать номер версии (например, stress-ng 0.16.04). Если система отвечает command not found, проверьте, не попала ли установка в логи с ошибками зависимостей, и повторите шаг 2.

Шаг 4: Первый запуск и стресс-тест

Попробуем безопасно нагрузить систему на короткое время. Ключ --cpu 0 задействует все доступные логические ядра, а --timeout 10s автоматически остановит тест через 10 секунд.

stress-ng --cpu 0 --timeout 10s --metrics-brief

Флаг --metrics-brief выведет статистику по количеству операций (bogo ops) и времени выполнения, что удобно для быстрой оценки производительности без лишнего вывода в консоль.

Проверка результата

После завершения теста в терминале появится сводная таблица. Обратите внимание на столбец bogo ops/s — он показывает среднюю скорость выполнения тестовых операций. Чем выше значение, тем стабильнее работает система под нагрузкой.

Если вам нужно прервать тест до истечения таймаута, просто нажмите Ctrl + C в активном окне терминала. Утилита корректно завершит дочерние процессы, очистит временные файлы и освободит память.

Возможные проблемы

  • Ошибка Permission denied при работе с сокетами или /proc/sys/...: Некоторые метрики требуют доступа к системным параметрам. Запустите команду с sudo, если тестируете работу с сетевыми интерфейсами или файловой системой.
  • Система зависает или срабатывает OOM-killer: Вы выделили слишком много потоков для оперативной памяти. Уменьшите параметр нагрузки, например --vm 2 --vm-bytes 75%, и обязательно используйте --timeout для автоматической остановки.
  • Пакет отсутствует в официальном репозитории: Для старых или минимальных сборок Linux соберите утилиту из исходников, скачав архив с официального релиза на GitHub, либо подключите EPEL-репозиторий на RHEL-совместимых системах.

Часто задаваемые вопросы

Зачем нужен stress-ng, если есть классическая утилита stress?
Можно ли запустить стресс-тест на удалённом сервере без риска зависания?

Полезное

Подключите репозиторий или обновите кэш пакетов
Установите пакет stress-ng
Проверьте успешность установки
Запустите базовый стресс-тест

Эта статья помогла вам решить проблему?