5 отличных утилит Linux для мониторинга системных ресурсов в терминале

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Хотя стандартные утилиты Linux хорошо служили нам на протяжении многих лет, в некоторых сценариях они не справляются. Если вы когда-либо обнаруживали себя пишущим однострочный запрос для опроса команды или испытывающим трудности с разбором плохо отформатированной таблицы, то это явный признак того, что имеющихся инструментов не хватает. Вам нужны лучшие инструменты; у меня есть лучшие инструменты — пять, которые облегчат вашу жизнь в Linux.

1 Использование диска NCurses (ncdu)

Для просмотра размеров каталогов du — надежный выбор, и, как правило, это первый выбор для большинства людей. Однако ему не хватает исследовательских возможностей. Несколько раз в год моя система жалуется мне, что на диске мало места, и я обнаруживаю, что исследую файловую систему, чтобы вручную удалить большие каталоги накопившегося мусора. Вот где du не хватает, а ncdu блистает.

Благодаря простому интерфейсу ncdu обеспечивает молниеносную скорость исследования каталогов.

Закрыто

Те, кто знаком с Vim, почувствуют себя как дома, потому что он использует клавиши Vim для навигации; те, кто предпочитает клавиши со стрелками, не будут ругать Vim. Так же, как и в файловых менеджерах на базе терминала, вы можете без труда углубляться в каталоги. Для каждого каталога ncdu отобразит размеры каталогов. Это простая утилита, которая делает одну вещь и делает ее хорошо.

Ncdu можно найти в большинстве официальных репозиториев дистрибутивов.

Чтобы установить его на Debian и его производные, например, Ubuntu, Linux Mint и т. д.:

sudo apt-get установить ncdu

Чтобы установить его на Red Hat и его производные, например, Fedora:

sudo dnf установить ncdu

Чтобы установить его на Arch и его производные:

sudo pacman -S ncdu

2 Бтоп++

Поскольку он обеспечивает широкий обзор всей моей системы, Btop легко входит в число моих любимых утилит. Он отображает столбцы и диаграммы для использования ЦП, диска, памяти и сети. Кроме того, панель «процессов» имеет интерфейс, подобный интерфейсу верхнего уровня, который позволяет вам фильтровать и завершать отдельные процессы.

Чтобы отфильтровать процессы, нажмите клавишу F, а чтобы завершить выделенный процесс, нажмите клавишу K.

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Одной из лучших особенностей интерфейса Btop является простота его адаптации к вашим потребностям. В Btop включены пресеты, и вы можете переключаться между ними, просто нажимая P. Для каждого пресета отображается отдельный набор панелей.

Закрыто

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

Закрыто

Но на этом веселье не заканчивается, ведь для тех, кто чувствует себя потерянным без Vim, есть (снова) клавиши.

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Btop — это существенное улучшение по сравнению со стандартной утилитой top.

Он доступен через большинство собственных репозиториев дистрибутивов. Для некоторых он доступен в соответствующем дополнительно репозитории. Для всех остальных вы можете установить его через Brew или Snap.

3 Bandwhich

Bandwhich — это сетевой монитор в реальном времени, который отображает сетевые соединения в реальном времени. Он отличается от netstat тем, что фокусируется на активных соединениях в реальном времени. Он отличается от tcpdump тем, что не является бесконечным потоком пакетов.

sudo bandwhich

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Удобно, что bandwhich предлагает две простые функции, которые помогут вам захватывать и просматривать соединения. Во-первых, вы можете нажать пробел, чтобы в любой момент приостановить захват, чтобы получить снимок соединений. Во-вторых, вы можете запустить его в кумулятивном режиме, который постепенно добавляет процессы и статистику пропускной способности в список, не удаляя их — аналогично журналу.

sudo bandwhich —total-utilization # Или -t

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Я предпочитаю Bandwhich другим инструментам, таким как tcpdump, потому что он прост и удобен, позволяя быстро определить, какие процессы подключаются к сети.

Он доступен в репозиториях Arch, Nix, Void и Fedora (Copr); все остальные могут установить его через Snap, Cargo или напрямую через релизы GitHub.

Чтобы установить его в Debian и его производных (например, Ubuntu или Mint):

sudo apt-get установить ncdu

Чтобы установить его на Red Hat и его производные (например, Fedora):

sudo dnf copr включить atim/band Which -y
sudo dnf install bandwhich

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

Чтобы установить его на Arch и его производные:

sudo pacman -S bandwhich

Если у вас возникли проблемы с установкой и у вас настроена среда Rust, вы можете вернуться к использованию cargo:

грузовой устанавливаемый бандаж

4 Мой Traceroute (mtr)

Команда MTR похожа на живую версию tracepath. Tracepath будет пинговать каждый сетевой переход последовательно фиксированное количество раз; MTR будет пинговать каждый сетевой переход одновременно, пока не остановится. Она отображает статистику в реальном времени по потере пакетов, джиттеру и задержке в живом интерфейсе curses.

mtr example.com

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Маршрутизаторы часто деприоритезируют пакеты ICMP, поэтому часто можно увидеть высокую потерю пакетов для некоторых переходов. Также обратите внимание, что эти переходы с большей вероятностью будут ограничивать ICMP, если вы подключаетесь через VPN, но это не означает, что у вас проблема с подключением; это просто означает, что у вас проблема с ICMP. Переключение на TCP (-T) или UDP (-u) редко помогает в этих случаях.

MTR также облегчает отчетность. Используйте флаг «-w» для создания «широкого» отчета, достаточно широкого, чтобы вместить имена хостов. В качестве альтернативы используйте «-j» для вывода JSON. Установите количество зондов с помощью флага «-c».

mtr -wc 1 example.com # Широкий отчет; 1 проверка.
mtr -jc 1 example.com # отчет JSON; 1 проверка.

Закрыто

Доступных вариантов множество, но лучше один раз увидеть, чем сто раз услышать.

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

MTR существует уже несколько десятилетий и доступен в каждом репозитории дистрибутивов.

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

5 Монитор пропускной способности (bmon)

Bmon — обманчиво простая утилита для мониторинга использования полосы пропускания в реальном времени. Хотя она не показывает информацию о хосте, как другие инструменты, ее единственная цель — полоса пропускания.

бмон м
bmon -p ‘eth*’ # Прослушивание всех проводных интерфейсов.

Вы можете увидеть все свои интерфейсы с помощью ifconfig.

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Это правда, что Btop++ также обеспечивает визуализацию пропускной способности в реальном времени, но bmon предоставляет некоторую дополнительную сетевую статистику. При открытом bmon нажмите D или i, и он откроет дополнительные панели с дополнительным контекстом.

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Одной из лучших особенностей bmon является то, что он может быть написан на скриптах. Конкретные поля вывода могут быть определены, отформатированы, а затем обработаны далее с использованием других инструментов или скриптов.

bmon -p ‘eth*’ -o format:fmt=’$(element:name) $(attr:rx:bytes) $(attr:tx:bytes) $(attr:rx:errors)n’

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Чтобы просмотреть правила форматирования, используйте следующую команду:

bmon -o формат:помощь

Bmon существует уже некоторое время и доступен в большинстве официальных репозиториев дистрибутивов.

Эти инструменты не могут заменить их стандартные аналоги GNU/Linux; они только заполняют определенные пробелы. Многие стандартные утилиты не имеют возможности мониторинга в реальном времени, и часто мы просто хотим видеть, как наши системы меняются со временем. Например:

  • Tcpdump выдает поток текста; я просто хочу посмотреть, что подключается к сети.
  • Du никогда не разрабатывался с расчетом на «найти и уничтожить» — в отличие от своих собратьев dd.

Хотя перечисленные инструменты удовлетворяют весьма конкретные потребности, они не удовлетворяют всем потребностям — для этого вам придется продолжать копать.

5 отличных утилит Linux для мониторинга системных ресурсов в терминале

Валентин Павлов/ автор статьи
Страсть Влентина к играм началась с Resident Evil, и с тех пор он не переставал играть в хоррор-игры. Пишет экспертные руководства для самых сложных игр и обзоры для самых громких релизов. Является магистром журналистики и имеет степень бакалавра лингвистики. Любимые игры: GTA 5, Silent Hill 2, Call of Duty: Modern Warfare 2, Heavy Rain, Metro 2033 и другие.
Понравилась статья? Поделиться с друзьями:
Добавить комментарий