20 команд мониторинга Linux, которые вы должны знать
В этой статье мы рассмотрим 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
Вывод:3
6. tcpdump
Tcpdump – это инструмент, который используется для анализа пакетов TCP / IP.
Эта команда обычно используется для анализа трафика в Linux, а также во многих других операционных системах.
tcpdump позволяет прослушивать весь входящий и исходящий трафик со всех интерфейсов.
Что еще более важно, он может фильтровать трафик по интерфейсу, хосту, месту назначения или хосту-источнику, типу трафика и многим другим критериям.
Мы также можем сохранить захваченные пакеты в файл для последующего анализа.
tcpdump
8. netstat -s
Команда netstat -s вывеодит сетевую статистику, такую как общее количество полученных и переданных пакетов по типу протокола и так далее.
Чтобы вывести статистику только избранных протоколов, таких как TCP или UDP, используйте соответствующие параметры, такие как t и u, вместе с параметром s.
netstat -s
9. ps -ef | grep PID
Команда ps выводит четыре столбца информации для двух минимальных процессов, запущенных в текущей оболочке.
Параметр -e указывает ps отображать все процессы.
Параметр -f означает полный список, который предоставляет подробную информацию о процессах.
ps -ef | grep docker
10. nethogs
NetHogs – это инструмент для небольших сетей.
Вместо того, чтобы разбивать трафик по протоколам или подсети, как это делают большинство таких инструментов, он группирует полосу пропускания по процессам и не зависит от загрузки специального модуля ядра.
Если внезапно возникает большой сетевой трафик, вы можете запустить NetHogs и сразу увидеть, какой PID вызывает это, а если это какой-то странный процесс, убить его.
nethogs
11. mpstat
Использование команды mpstat отобразит среднюю глобальную активность всех процессоров.
Мы можем отображать общую статистику ЦП по системе или по процессору с помощью команды mpstat.
mpstat
Вывод:
12. free -m
Free -m – это команда, которая отображает используемую память в нашей системе.
Команда Free -m также отображает доступную память!
free -m
Вывод:
13. uptime
Команда uptime показывает, как долго работает система.
Она также показывает, сколько пользователей вошли в систему.
Вывод:
uptime 11:23:38 up 649 days, 21:44, 2 users, load average: 0.15, 0.15, 0.20
14. ps -e
Команда ps помогает просматривать сведения о запущенных в данный момент процессах.
Мы также можем убить или завершить процессы, которые не работают нормально.
В выводе будут перечислены все запущенные процессы, а также те, которые запущены другими пользователями.
ps -e
15. ac
Команда ac отображает отчет о времени соединения (часах) этой системы на основе времени входа и выхода.
Хранится в файле wtmp.
ac
16. ac -d
Команда ac -d выводит общее количество за каждый день, а не только одно общее количество.
ac -d
17. ac -p
Команда ac -p выводит общее время для каждого пользователя в дополнение ко всему.
ac -p
18. vmstat -m
Инструмент vmstat используется для мониторинга использования виртуальной памяти системы.
Команда vmstat -m отображает информацию о вашей виртуальной машине.
vmstat -m
19. vmstat –d
Vmstat -d отображает статистику диска виртуальной памяти нашей системы.
Инструмент vmstat -d используется для мониторинга использования виртуальной памяти системой.
Вывод:
20. pstree
Команда pstree показывает структуру наследования процессов.
Команда pstree отображает ту команду, которая является дочерней по отношению к другой команде.
Вывод: