Как установить «atop» для мониторинга производительности системы в реальном времени

atop — это полноэкранный инструмент мониторинга производительности, который предоставляет подробные отчеты обо всех системных процессах, включая те, которые уже завершены. Он делает это, непрерывно регистрируя системную активность через регулярные интервалы, сохраняя эту информацию для последующего использования.
Эти журналы можно использовать для различных целей, таких как системный анализ, настройка производительности, выявление узких мест, отладка проблем или отслеживание причины непредвиденной перегрузки.
В отличие от традиционных инструментов, таких как top или htop, которые показывают только текущие системные данные, atop дает вам возможность заглянуть назад во времени и точно проверить, что происходило в течение любого зарегистрированного интервала, что делает его особенно ценным для системных администраторов, поскольку он позволяет поддерживать бесперебойную работу серверов.
В этой статье мы рассмотрим, что предлагает atop, как установить его на популярные дистрибутивы Linux и как эффективно использовать его для мониторинга и анализа истории производительности вашей системы.
Что такое atop?
atop — это полноэкранный монитор системы и процессов для Linux, который предназначен для создания отчетов об активности всей системы и каждого процесса, включая:
- Просмотреть все запущенные и завершенные процессы.
- Контролируйте использование ЦП, памяти, диска и сети для каждого процесса.
- Регистрируйте все действия в двоичных файлах для последующего анализа.
- Обнаружение зомби-процессов и процессов-сирот.
- Отображение использования ресурсов на уровне потоков.
- Отслеживайте активность каждого пользователя и каждой программы.
- Показать остановку давления (PSI) для ЦП/памяти/диска в современных ядрах.
- Поддержка cgroup v2, идеально подходящая для контейнеризированных сред.
- Дополнительная интеграция с Netatop для получения сетевой статистики по каждому процессу.
И что выделяет atop: он может регистрировать всю эту активность на диске через регулярные интервалы (по умолчанию каждые 10 минут). Затем вы можете воспроизвести любую часть истории системы и разобраться, что произошло.
Это огромное преимущество, когда вам нужно устранять случайные сбои, отслеживать злоупотребление ресурсами или контролировать их использование с течением времени, особенно для серверов без интерфейса или производственных систем.
Установка инструмента мониторинга Atop на Linux
atop доступен в большинстве репозиториев дистрибутивов Linux, вы можете установить его с помощью менеджера пакетов вашей системы или скомпилировать из исходного кода для получения последней версии.
На RHEL/CentOS/Fedora
Сначала вам нужно будет включить репозиторий epel в дистрибутивах на базе RHEL, чтобы установить инструмент мониторинга поверх.
sudo dnf install epel-release
После включения репозитория epel вы можете просто использовать менеджер пакетов yum для установки пакета atop , как показано ниже.
sudo dnf install atop
В Debian/Ubuntu
В дистрибутивах на базе Debian atop можно установить из репозиториев по умолчанию с помощью команды apt.
sudo apt-get install atop
В Arch Linux/Manjaro
Если вы используете дистрибутив с непрерывным релизом, такой как Arch или его производные, установка atop выполняется всего одной командой:
sudo pacman -S atop
Установка поверх исходного кода (необязательно)
Если вам нужна последняя версия (например, если версия репозитория устарела или вам нужны новейшие функции), вы можете выполнить сборку поверх исходного кода.
wget https://www.atoptool.nl/download/atop-2.12.0.tar.gz tar -xzf atop-2.12.0.tar.gz cd atop-2.12.0 make sudo make install
Примечание : Вам могут потребоваться установленные инструменты разработки, такие как build-essential (Debian) или gcc , make и т. д., в зависимости от вашего дистрибутива.
После установки atop нам необходимо включить его фоновую службу ведения журнала, чтобы он мог начать автоматически собирать данные о производительности при загрузке.
sudo systemctl enable --now atop sudo systemctl enable --now atop-rotate.timer
Начало работы с atop в Linux
После установки и включения службы ведения журнала запустите ее в терминале:
atop
Затем вы увидите динамический цветной интерфейс, похожий на верхний, который по умолчанию обновляется каждые 10 секунд.
Настройка интервала журнала (по умолчанию: 600 секунд)
По умолчанию atop регистрирует активность системы каждые 600 секунд (т. е. 10 минут), что может быть достаточно для общего мониторинга, но часто это происходит слишком редко для эффективного устранения неполадок, особенно когда вы отслеживаете кратковременные всплески использования ресурсов или устраняете узкие места производительности.
sudo sed -i 's/600/60/' /etc/atop/atop.daily [В системах на базе RedHat] sudo sed -i 's/600/60/' /etc/default/atop [В системах на базе Debian]
После внесения этого изменения atop начнет собирать журналы каждую минуту, предоставляя вам гораздо более четкую картину поведения системы с течением времени, что особенно полезно при диагностике периодических проблем, анализе тенденций или мониторинге серверов под большой нагрузкой.
Просмотр информации о расписании (клавиша s)
Чтобы получить представление о том, как ядро планирует процессы, нажмите клавишу s
, которая отобразит, сколько процессорного времени потребляет каждый процесс и как долго они находятся в состоянии «running».
atop -s
Анализ использования памяти (клавиша m)
Нажав клавишу m
, вы получите комплексный обзор использования памяти для всех запущенных процессов. Столбец VSIZE
показывает общую выделенную виртуальную память, а RSIZE
указывает часть памяти, которая в данный момент находится в ОЗУ.
Дополнительно, VGROW
и RGROW
отображает, сколько виртуальной и резидентной памяти процесс приобрел или потерял в течение текущего интервала. Столбец MEM
показывает общий процент памяти, используемой каждым процессом.
atop -m
Мониторинг использования диска (клавиша d)
Дисковый ввод-вывод является распространенным узким местом во многих системах, и atop упрощает мониторинг с помощью ключа d
, который показывает активность диска на системном уровне, включая статистику управления логическими томами (LVM) и производительность каждого диска.
Столбцы RDDSK
и WRDSK
показывают объем считываемых и записываемых данных (в КБ/с), а столбцы DSK
и LVM
помогают определить, какие тома или диски наиболее активны.
atop -d
Просмотр подробной информации о процессе (клавиша v)
Ключ v
позволяет получить подробную разбивку каждого процесса, показывая такие значения, как UID
, PID
, GID
и процент использования ЦП, что особенно удобно, когда вам нужно отслеживать конкретных пользователей или службы по их числовым идентификаторам или проверять, какая группа владеет определенными ресурсоемкими процессами.
atop -v
Показать команды процесса (клавиша c)
Если вам нужно точно узнать, какая команда была запущена для каждого процесса, нажмите клавишу c
, которая заменит имя процесса на полную командную строку, помогая вам точно определить, какой скрипт, двоичный файл или флаг был использован, что полезно для различения нескольких экземпляров одного и того же приложения или для отладки заданий, отправленных пользователем.
atop -c
Группировка процессов по программе (клавиша p)
Чтобы получить сводку высокого уровня активности на уровне программы, используйте ключ p
, который объединяет данные по исполняемой программе, показывая, сколько раз каждая из них была порождена и сколько ресурсов было накоплено. Самый левый столбец показывает количество порождений, а самый правый столбец перечисляет фактические имена программ.
atop -p
Группировка процессов по пользователю (клавиша u)
Если вас интересует использование ресурсов на уровне пользователя, нажмите клавишу u
, которая покажет, сколько процессов каждый пользователь в данный момент запускает или запустил в течение интервала мониторинга, а также совокупное использование ЦП и памяти.
atop -u
Мониторинг использования сети (клавиша n)
Чтобы включить статистику сетевого трафика для каждого процесса, вам необходимо установить и активировать модуль ядра Netatop, который расширяет возможности atop по отображению отправленного и полученного трафика для каждого процесса.
# На основе RedHat: sudo yum install kernel-devel zlib-devel # На основе Debian: sudo apt-get install zlib1g-dev
Загрузите и соберите:
wget http://www.atoptool.nl/download/netatop-0.3.tar.gz tar -xvf netatop-0.3.tar.gz cd netatop-0.3 make sudo make install
Чтобы загрузить модуль и запустить демон автоматически после загрузки:
sudo systemctl start netatop sudo systemctl enable netatop
После установки нажатие n
на внутреннюю часть сверху покажет вам отправленные/полученные байты, количество пакетов и сетевые ошибки для каждого процесса.
atop -n
Доступ к историческим журналам
Atop хранит двоичные файлы журналов по адресу:
/var/log/atop/atop_YYYYMMDD
Например, файл типа , atop_20250701
содержит журналы за 30 июня 2025 года, которые являются двоичными файлами и не пригодны для чтения человеком — их может анализировать только atop.
Чтобы просмотреть определенный временной интервал из сегодняшнего журнала, например, начиная с 7:25 утра:
atop -r -b 07:25 -l 1
Здесь:
-r
сообщает Atop о необходимости чтения файла журнала.-b
указывает время начала.-l 1
ограничивает вывод только одним интервальным снимком.
Используйте пробел для перемещения вперед по интервалам и T
для возврата назад. Z
— Переход к последней записи.
Получите помощь внутри Atop
Находясь в верхнем интерфейсе, нажмите ?
, чтобы просмотреть полный список команд и сочетаний клавиш, что полезно, когда вы хотите найти менее очевидные опции или настроить отображение в соответствии со своими предпочтениями.
Заключение
Надеюсь, вы найдете мою статью полезной и поможете сузить или предотвратить проблемы с вашей системой Linux. Если у вас есть какие-либо вопросы или вы хотите получить разъяснения по использованию atop, пожалуйста, оставьте комментарий в разделе комментариев ниже.
Редактор: AndreyEx