Linux предлагает ряд инструментов для проверки запущенных процессов. С помощью приложений, показанных ниже, вы можете узнать, какие приложения съедают всю вашу память и какие файлы прикреплены к этим мошенническим программам. Или вы можете просто получить общее представление о том, как работает ваша система.
Независимо от вашего конкретного уровня интереса, это руководство станет отправной точкой в этом путешествии.
1. вверху
Возможно, самый известный менеджер служб/процессов в наборе инструментов Linux — вершина . Его название является аббревиатурой от «Таблица процессов». Версия для Linux (другие написаны для Unix, Solaris и т. д.) размещается в пакете
1. вверху
илит, которые вы можете получить по ссылке выше.На этом снимке экрана видно, что top предоставляет сразу много информации. В верхней части экрана вы можете увидеть, как долго работает компьютер, текущую загрузку процессора и текущее использование памяти. Эти значения относятся ко всей системе, а не только к отдельным программам, отображаемым под этим текстом.
Напротив, в основной части экрана вы можете увидеть использование отдельного процессора и памяти для различных запущенных процессов. На приведенном здесь снимке экрана показаны только службы, запущенные пользователем root, а systemd занимает первое место как потребитель с наибольшим использованием памяти (всего 0,3 процента).
Вы можете запустить top в командной строке, указав всего лишь top
, чтобы получить интерактивную информацию обо всех запущенных процессах для всех пользователей. Запуск top U user
приведет к тому же типу среды, но покажет процессы для этого конкретного пользователя.
Вы также можете выделить запущенный процесс, сначала запустив pidof process
, чтобы поместить этот вывод в начало с помощью top -p pid
. Например, pid firefox
на этом компьютере возвращает «2886», поэтому запуск top -p 2886
показывает на экране только информацию об этом процессе.
2. иотоп
Некоторые утилиты пытаются сократить список лучших предложений. Одна из таких программ, йотоп , делает именно это. Его вывод, как вы можете видеть здесь, намного проще, чем у top.
Iotop отображает ввод/вывод запущенного процесса. В верхней части экрана он показывает операции чтения и записи на диск в байтах, а затем отображает идентификатор каждого процесса и отдельные операции чтения, записи и ввода-вывода, которые они потребляют.
Как и в случае с top, вы можете выбрать выходные данные iotop, указав такие параметры, как iotop -p pid
для мониторинга одного процесса или iotop -u user
для мониторинга запущенных процессов одного пользователя.
3. Мониторинг
С самого начала Монит пытается быть более конкретным, но при этом простым в использовании. Он работает как демон и будет следовать процессам и службам, которые вы указываете в его файле конфигурации.
Запуск демона из командной строки выглядит несложно.
Чтобы максимально эффективно использовать возможности Monit, рекомендуется разрешить запуск Monit при запуске. Испол
2. иотоп
андаsystemctl enable monit
выполнит эту задачу.
Затем вы можете отредактировать файл конфигурации Monit (расположенный в «/etc/monitrc»), чтобы отслеживать и изменять определенные процессы с момента их запуска. Проверьте эту опцию в файле конфигурации ниже.
Хотя строки закомментированы, вы можете видеть, что эта серия команд будет следовать за процессом Apache, запускать или останавливать его при необходимости и создавать оповещения, когда что-то пойдет не так. Файл конфигурации должен быть легко читаем и редактируем; для выполнения задач он использует такие ключевые слова, как «начало», «если», «то» и «внутри».
Читайте также: Что такое GREP в Linux и как его использовать?
4. lsof
Если вам интересно, какие файлы открыл процесс во время работы, используйте лсоф . При запуске команды lsof
по умолчанию выводится список всех файлов, открытых каждым процессом, запущенным в системе. Поэтому может быть полезно задать более к
3. Мониторинг
Вы можете узнать конкретное имя запущенного процесса, например Firefox, передав вывод lsof в grep
, который будет искать указанную вами строку.
Поэтому, если вы хотите узнать, использует ли Firefox аудиобиблиотеку FLAC, будет полезна следующая команда:
lsof | grep firefox | grep -i libflac
Это сокращает вывод с тысяч строк примерно до двадцати.
Версия этой команды выдает следующее.
Что вы можете повторить здесь, это сначала запустить lsof, затем выполнить поиск «firefox» в виде строки в выводе lsof, а затем поискать в этих строках, содержащих «firefox», строку «libflac». Grep использует флаг -i
в последней команде, чтобы игнорировать прописные и строчные буквы при поиске.
Последняя команда grep -i gdbus
используется здесь для предоставления однострочного примера. Он произвольно выбирает одну строку вывода, в которой в качестве команды задачи, идентифицированной lsof, указано «gdbus».
Lsof отображает команду, связанную с запущенным процессом, его идентификатор процесса, команду задачи, связанную с файлом, который запускает процесс, и имя файла, прикрепленного к запущенному процессу, а также некоторые другие данные.
5. ps_mem
Самое простое приложение в этом списке, ps_mem , отображает использование памяти запущенными процессами в системе. Пробный запуск ps_mem
в командной строке покажет список всех запущенных процессов и их индивидуальное потребление памяти.
Чтобы исследовать конкретный процесс, вы можете указать его идентификатор (не забудьте использовать pidof process
для получения этой информации) в команде ps_mem -p process
. Посмотрите этот вывод для справки:
Ps_mem полезен, если у вас есть программа, которая, по вашему мнению, использует слишком много памяти. Вы можете использовать его как отдельный инструмент или вместе с другими, чтобы проверить свои выводы.
Заключение
Не позволяйте приложениям на вашем компьютере работать некорректно. Держите их под контролем, бегло просмотрев top, iotop или ps_mem, а затем иссле
4. lsof
ью Monit и lsof.Это мощные инструменты, на справочных страницах которых доступно гораздо больше опций, поэтому обязательно прочтите их документацию при исследовании проблемной проблемы.
Изображение предоставлено: Xfce спешит на помощь!