Поиск по сайту:

Мониторинг системных ресурсов с помощью Bashtop и Bpytop в Linux

Инструменты мониторинга жизненно важны, и каждый системный администратор это знает. С помощью приложений для мониторинга ресурсов мы можем постоянно наблюдать за состоянием ресурсов системы во время выполнения задачи. Сегодня мы обсудим два монитора системных ресурсов, а именно Bashtop и Bpytop, для мониторинга системных ресурсов в Linux и Unix-подобных операционных системах. Мониторы ресурсов Bashtop и Bpytop покажут вам использование системы и статистику по процессору, памяти, дискам, сети и процессам.

Автор этого дуэта инструментов мониторинга сначала разработал Bashtop, а затем создал порт Bashtop на Python и назвал его Bpytop. У них нет большой разницы. Обе утилиты служат одной цели и имеют одинаковый набор функций. Единственная разница в том, что оба написаны на разных языках программирования. Bashtop написан на Bash, а Bpytop — на Python. Bashtop и Bpytop поддерживают GNU/Linux, Mac OS и FreeBSD.

Разработчик утверждает, что Bpytop быстрее, чем Bashtop, а Bpytop имеет больше возможностей, и предлагает нам использовать Bpytop вместо Bashtop. Однако это ваш личный выбор. Вы можете попробовать оба варианта и выбрать тот, который подойдет именно вам.

Установите монитор ресурсов Bashtop в Linux

Bashtop должен работать на любых современных системах *nix, имеющих следующие зависимости:

  • Терминал с поддержкой 24-битного truecolor,
  • Bash 4.4 или более поздние версии,
  • Гит,
  • GNU Coreutils,
  • GNU СЭД,
  • GNU авк,
  • GNU команда,
  • ps из procps-ng (v3.1.15 или новее),
  • Python 3.6 или более поздние версии,
  • Psutil (v5.7.0 или новее),
  • Дополнительные пакеты;

    • Lm-сенсоры — для отображения температуры процессора,
    • iostat (часть sysstat) — для отображения статистики чтения/записи диска без использования сбора данных psutil,
    • curl — загружайте темы bashtop и получайте сообщения об обновлениях.

Установить bashtop в Arch Linux

Несмотря на то, что Bashtop является новой программой, за короткий период времени она стала довольно популярной и попала в официальные репозитории популярных дистрибутивов Linux.

В Arch Linux Bashtop включен в репозиторий [Community]. Чтобы установить Bashtop в Arch Linux и его вариантах, таких как Manjaro Linux, запустите:

sudo pacman -S bashtop

Он также доступен в AUR, поэтому его можно установить с помощью любой вспомогательной программы AUR, например Yay.

yay -S bashtop-git

Установить bashtop в Debian

Bashtop доступен в официальном репозитории Debian начиная с Debian 11. Чтобы установить Bashtop в Debian, запустите:

sudo apt install bashtop

Установить bashtop в Fedora

sudo dnf install bashtop

Установить bashtop на CentOS 8/RHEL 8

sudo dnf config-manager --set-enabled PowerTools
sudo dnf install epel-release
sudo dnf install bashtop

Установить bashtop в Ubuntu

Bashtop доступен в официальном репозитории Ubuntu начиная с Ubuntu 20.10.

Чтобы установить Bashtop в Ubuntu и его производных, таких как Linux Mint, запустите:

sudo apt install bashtop

Установить bashtop из Snap store

Он также доступен как приложение Snap:

sudo snap install bashtop

Установить bashtop из PPA

Также доступен официальный PPA. Добавьте Bashtop PPA и установите его в Ubuntu, выполнив одну за другой следующие команды:

sudo add-apt-repository ppa:bashtop-monitor/bashtop
sudo apt update
sudo apt install bashtop

Установить Bashtop из исходников

Вы также можете установить его из исходного кода. Просто убедитесь, что вы установили вышеупомянутые зависимости.

Git клонирует репозиторий Bashtop с помощью команды:

git clone https://github.com/aristocratos/bashtop.git

Приведенная выше команда клонирует содержимое репозитория GitHub Bashtop в каталог с именем «bashtop» в текущем каталоге. Перейдите в клонированный каталог:

$ cd bashtop

И запустите следующую команду, чтобы установить Bashtop из исходного кода:

sudo make install

Чтобы удалить его, просто запустите следующую команду из каталога bashtop:

sudo make uninstall

Установите монитор ресурсов Bpytop в Linux

Bpytop — это порт Bashtop на Python. Автор утверждает, что Bpytop намного быстрее и имеет больше возможностей, чем Bashtop.

Bpytop доступен в виде приложения Snap. Чтобы установить Bpytop в дистрибутивах Linux, поддерживающих Snapd, выполните:

sudo snap install bpytop

Установите Bpytop из исходного кода

Убедитесь, что ваша система имеет следующие зависимости:

  • Терминал с поддержкой 24-битного истинного цвета,
  • Python 3 (v3.6 или новее),
  • модуль psutil (v5.7.0 или новее).

После установки необходимых компонентов git клонируйте репозиторий Bpytop с помощью команды:

git clone https://github.com/aristocratos/bpytop.git

Приведенная выше команда клонирует содержимое bpytop в локальный каталог с именем «bpytop». Перейдите в него и установите его, как показано ниже:

cd bpytop 
sudo make install

Чтобы удалить Bpytop, просто запустите следующую команду из каталога bpytop:

sudo make uninstall

Мониторинг системных ресурсов с помощью Bashtop и Bpytop в Linux

Как я уже сказал, Bashtop и Bpytop служат одной и той же цели, то есть отслеживают системные ресурсы и отображают статистику по процессору, памяти, дискам, процессам, сети и т. д.

Чтобы начать мониторинг системных ресурсов Linux, запустите Bashtop или Bpytop, как показано ниже:

bashtop

Или,

bpytop

Пример вывода:

Мониторинг системных ресурсов с помощью Bashtop в Linux

Как вы можете видеть в приведенном выше выводе, Bashtop отображает следующую информацию:

  • график использования процессора,
  • Тактовая частота процессора,
  • Общее использование ЦП,
  • Использование каждого ядра ЦП,
  • Общий объем оперативной памяти,
  • Использованная оперативная память,
  • Свободная оперативная память,
  • Кэш-память,
  • Доступная кэш-память,
  • Использование свопа (использованный и бесплатный),
  • Текущие скорости чтения и записи дисков.

Частота обновления по умолчанию для Bashtop/Bpytop составляет 2500 миллисекунд. Нажмите клавиши (+, A, a), чтобы добавить 100 мс к обновлению таймера. Нажмите клавиши (-, S, s), чтобы вычесть 100 мс из таймера обновления.

Выбрать и просмотреть процессы

Используйте клавиши ВВЕРХ/ВНИЗ для навигации по процессам или использованию. Нажмите клавиши Pg Up и Pg Down, чтобы перейти на 1 страницу в списке процессов. Нажмите клавиши (Home или End), чтобы перейти к первой или последней странице списка процессов.

В разделе «Процессы» в столбцах отображаются следующие сведения:

  • Идентификатор процесса (PID),
  • Имя процесса,
  • Аргументы,
  • Потоки,
  • Хозяин процесса,
  • Подробности использования памяти процессом,
  • Загрузка процессора процессом.

Переключаться между столбцами можно с помощью клавиш со стрелками (Влево или Вправо).

Имена процессов располагаются по PID в порядке убывания. И.Е. наибольший PID будет показан сверху. Вы можете использовать клавиши (R, r) для изменения порядка сортировки в разделе процессов.

Чтобы отобразить подробную информацию о выбранном процессе, нажмите Enter.

Просмотр сведений о выбранном процессе в Bashtop

Чтобы закрыть окно сведений о выбранном процессе, нажмите клавишу ВВОД.

Фильтровать процессы

Чтобы отфильтровать процессы по определенной строке, нажмите клавиши (F, f) и введите имя строки. Например, если вы наберете "ssh", вы увидите все процессы, названия которых начинаются с букв "ssh".

Фильтровать процессы по определенной строке в Bashtop

Чтобы очистить любой введенный фильтр, нажмите клавиши (C, c).

Завершить процессы

Вы можете завершить выбранный процесс с помощью SIGTERM, нажав клавиши (T, t).

Завершить процессы в Bashtop

Убить процессы

Чтобы завершить выбранный процесс с помощью SIGKILL, нажмите клавиши (K, k).

Это эквивалентно команде «kill -9 ».

Прерывать процессы

Чтобы прервать выбранный процесс с помощью SIGINT, нажмите клавиши (I, i).

Отобразить справку

Вы можете нажимать клавиши F1, H, h, чтобы отобразить раздел справки.

Отобразить раздел справки Bashtop

Вы можете вызвать главное меню Bashtop/Bpytop, нажав клавиши Esc, M, m.

Выйти из Bashtop/Bpytop

Чтобы выйти из Bashtop/Bpytop, просто нажмите клавиши (Ctrl-C, Q, q).

Настроить Bashtop/Bpytop

Файлы конфигурации Bashtop и Bpytop хранятся в папках "$HOME/.config/bashtop" и "$HOME/.config/bpytop" соответственно.

Вы можете просмотреть текущие параметры конфигурации Bashtop/Bpytop, просмотрев файл.

Конфигурационный файл Баштопа:

cat ~/.config/bashtop/bashtop.cfg

Конфигурационный файл Bpytop:

cat ~/.config/bashtop/bpytop.cfg

Пример вывода:

#? Config file for bashtop v. 0.9.25

#* Color theme, looks for a .theme file in "$HOME/.config/bashtop/themes" and "$HOME/.config/bashtop/user_themes"
#* Should be prefixed with either "themes/" or "user_themes/" depending on location, "Default" for builtin default theme
color_theme="Default"

#* Update time in milliseconds, increases automatically if set below internal loops processing time, recommended 2000 ms or above for better sample times for graphs
update_ms="2300"

#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu responsive"
#* "cpu lazy" updates sorting over time, "cpu responsive" updates sorting directly
proc_sorting="pid"

#* Reverse sorting order, "true" or "false"
proc_reversed="false"

#* Show processes as a tree
proc_tree="false"

#* Check cpu temperature, only works if "sensors", "vcgencmd" or "osx-cpu-temp" commands is available
check_temp="false"

#* Draw a clock at top of screen, formatting according to strftime, empty string to disable
draw_clock="%X"

#* Update main ui when menus are showing, set this to false if the menus is flickering too much for comfort
background_update="true"

#* Custom cpu model name, empty string to disable
custom_cpu_name=""

#* Enable error logging to "$HOME/.config/bashtop/error.log", "true" or "false"
error_logging="true"

#* Show color gradient in process list, "true" or "false"
proc_gradient="true"

#* If process cpu usage should be of the core it's running on or usage of the total available cpu power
proc_per_core="false"

#* Optional filter for shown disks, should be names of mountpoints, "root" replaces "/", separate multiple values with space
disks_filter=""

#* Enable check for new version from github.com/aristocratos/bashtop at start
update_check="true"

#* Enable graphs with double the horizontal resolution, increases cpu usage
hires_graphs="false"

#* Enable the use of psutil python3 module for data collection, default on OSX
use_psutil="true"

Просто измените настройки по своему вкусу.

Кроме того, вы можете просмотреть текущие параметры из Bashtop/Bpytop TUI, нажав букву "m".

Окно настроек Баштопа

Связанное чтение:

  • Некоторые альтернативы утилите командной строки «top», о которых вы, возможно, захотите узнать

Ресурсы:

  • Репозиторий Bashtop на GitHub
  • Репозиторий Bpytop на GitHub

Избранное изображение: Бурак К из Pexels.

Статьи по данной тематике