В этой статье мы рассмотрим 20 команд мониторинга Linux, которые вы должны знать как системный администратор / системный администратор Linux / DevOps / SRE.
Вступление
Если вы работаете системным администратором / администратором Linux / DevOps / SRE, то, скорее всего, вам придется решать проблемы, связанные с производительностью, в среде Linux.
Давайте рассмотрим некоторые из наиболее часто используемых утилит командной строки Linux для диагностики проблем, связанных с сетью и производительностью.
1. Top
Когда мы запустим эту команду, откроется интерактивный командный режим. Где верхняя половина будет содержать статистику процессов и использования ресурсов. А нижняя половина содержит список запущенных в данный момент процессов.
$ top |
Нажатие q просто выведет вас из данного режима.
Вывод:
2. vmstat
Команда vmstat – это утилита Linux для отображения статистики, связанной с потреблением памяти, использования диска и другой системной информацией. vmstat не должен присутствовать в вашей системе Linux, но не беспокойтесь. Мы можем легко установить пакет «sysstat»
$ vmstat |
Вывод:
3. iostat
Команда iostat на Linux позволяет отслеживать статистику использования ЦП и ввода-вывода ( I/O) для всех дисков и файловых систем. Команды iostat полезны для изменения конфигурации системы, чтобы лучше сбалансировать нагрузку ввода-вывода между физическими дисками. Эта команда в основном используется системными администраторами Linux.
$ iostat |
Вывод:
4. iostat -d
Команда iostat -d используется для мониторинга загрузки устройств ввода / вывода системы, отслеживая время активности устройств в зависимости от их средней скорости передачи данных. Команда iostat -d используется для отображения отчетов об использовании устройств.
Вывод:
5. lsof
Задача команды lsof – «перечислить открытые файлы» в системе. Открытый файл не означает pdf или текстовый файл, он включает файлы на диске или каналы, используемые процессами в фоновом режиме. Эта команда – удобный инструмент для отладчиков операционной системы и системных администраторов.
$ lsof |
Вывод:
6. tcpdump
Tcpdump – это инструмент, который используется для анализа пакетов TCP / IP. Эта команда обычно используется для анализа трафика в Linux, а также во многих других операционных системах. tcpdump позволяет прослушивать весь входящий и исходящий трафик со всех интерфейсов. Что еще более важно, он может фильтровать трафик по интерфейсу, хосту, месту назначения или хосту-источнику, типу трафика и многим другим критериям. Мы также можем сохранить захваченные пакеты в файл для последующего анализа.
$ tcpdump |
7. netstat -s
Команда netstat -s вывеодит сетевую статистику, такую как общее количество полученных и переданных пакетов по типу протокола и так далее. Чтобы вывести статистику только избранных протоколов, таких как TCP или UDP, используйте соответствующие параметры, такие как t и u, вместе с параметром s.
$ netstat -s |
8. ps -ef | grep PID
Команда ps выводит четыре столбца информации для двух минимальных процессов, запущенных в текущей оболочке. Параметр -e указывает ps отображать все процессы. Параметр -f означает полный список, который предоставляет подробную информацию о процессах.
$ ps -ef | grep docker |
9. nethogs
NetHogs – это инструмент для небольших сетей. Вместо того, чтобы разбивать трафик по протоколам или подсети, как это делают большинство таких инструментов, он группирует полосу пропускания по процессам и не зависит от загрузки специального модуля ядра. Если внезапно возникает большой сетевой трафик, вы можете запустить NetHogs и сразу увидеть, какой PID вызывает это, а если это какой-то странный процесс, убить его.
$ nethogs |
10. mpstat
Использование команды mpstat отобразит среднюю глобальную активность всех процессоров. Мы можем отображать общую статистику ЦП по системе или по процессору с помощью команды mpstat.
$ mpstat |
Вывод:
11. free -m
Free -m – это команда, которая отображает используемую память в нашей системе. Команда Free -m также отображает доступную память!
$ free -m |
Вывод:
12. uptime
Команда uptime показывает, как долго работает система. Она также показывает, сколько пользователей вошли в систему.
Вывод:
$ uptime |
11:23:38 up 649 days, 21:44, 2 users, load average: 0.15, 0.15, 0.20
13. ps -e
Команда ps помогает просматривать сведения о запущенных в данный момент процессах. Мы также можем убить или завершить процессы, которые не работают нормально. В выводе будут перечислены все запущенные процессы, а также те, которые запущены другими пользователями.
$ ps -e |
14. ac
Команда ac отображает отчет о времени соединения (часах) этой системы на основе времени входа и выхода. Хранится в файле wtmp.
$ ac |
15. ac -d
Команда ac -d выводит общее количество за каждый день, а не только одно общее количество.
$ ac -d |
16. ac -p
Команда ac -p выводит общее время для каждого пользователя в дополнение ко всему.
$ ac -p |
17. vmstat -m
Инструмент vmstat используется для мониторинга использования виртуальной памяти системы. Команда vmstat -m отображает информацию о вашей виртуальной машине.
$ vmstat -m |
18. vmstat –d
Vmstat -d отображает статистику диска виртуальной памяти нашей системы. Инструмент vmstat -d используется для мониторинга использования виртуальной памяти системой.
Вывод:
19. pstree
Команда pstree показывает структуру наследования процессов. Команда pstree отображает ту команду, которая является дочерней по отношению к другой команде.
Вывод:
Источник: https://telegra.ph/20-komand-monitoringa-Linux-kotorye-vy-dolzhny-znat-05-23