В операционных системах на основе Linux и Unix запущенный экземпляр команды называется процессом. Вы можете идентифицировать каждый процесс по уникальному идентификатору процесса. Linux предоставляет инструменты командной строки для эффективного перечисления, управления и мониторинга этих процессов.
Вы можете использовать эти инструменты для определения приоритетов каждого процесса или переводить их в фоновый или передний план для эффективного управления системными ресурсами.
Это руководство по управлению процессами в Linux включает в себя такие инструменты, как ps, kill, renice и другие команды, помогающие системным администраторам управлять процессами и перечислять их.
Список процессов с помощью команды ps
Самая старая и наиболее часто используемая утилита командной строки для вывода списка запущенных в настоящее время процессов в Linux — это PS. Хотя верхняя команда — это еще один интерактивный и ориентированный на экран способ управления и перечисления системных процессов. ps также отображает дополнительную информацию, например ресурсы, потребляемые каждым процессом.
Из-за многопользовательской среды каждый процесс в Linux связан с отдельной учетной записью пользователя и группы. Следовательно, информация об учетной записи с подробностями процесса помогает вам получить доступ к системным ресурсам, которые может использовать процесс.
Например, процессы, запущенные с привилегиями суперпользователя, могут получить доступ к большему количеству системных ресурсов, чем обычный пользователь, и в этом ps помогает системным администраторам.
Следующий вывод является примером списка процессов с именами пользователей, прошедшим временем и соответствующим потреблением памяти и ЦП:
Вы также можете обратить внимание на столбец STAT, который показывает состояние запущенного процесса. р представляет процесс, запущенный в данный момент, и С это спящий процесс со знаком плюс, указывающим на операции переднего плана.
Вы можете перечислить все процессы текущего пользователя следующим образом:
пс укс | меньше
Чтобы просмотреть процессы для всех пользователей:
PS вспомогательный | меньше
Управление процессами с помощью системного монитора
Системный монитор обеспечивает графический способ отображения процессов и управления ими. Чтобы запустить системный монитор, перейдите в Приложения > Системный монитор. Переключиться на Процессы вкладку для просмотра всех запущенных процессов.
По умолчанию он отображает процессы в алфавитном порядке для текущего пользователя. Вы можете повторно отсортировать список процессов, щелкнув заголовок любого столбца. Кроме того, вы можете нажать на кнопку %ЦПУ а также Память заголовки для просмотра процессов, потребляющих больше вычислительной мощности и памяти.
Системный монитор позволяет вам управлять процессами различными способами, что означает, что вы можете останавливать, уничтожать, продолжать, завершать и изменять приоритет процесса, просто щелкнув правой кнопкой мыши имя процесса.
Это лучший инструмент для начинающих пользователей Linux, которые не знают, как работать с утилитами командной строки.
Связанный: Как отобразить результат лучших процессов и отсортировать по памяти
Работа с фоновыми/передними процессами
Приходит время, когда вам нужно получить доступ к системе Linux по сети, используя только командную строку. Это ограничивает эффективное управление несколькими активными программами. Но оболочка позволяет вам управлять программами, переключая их в фоновый и передний план.
Как запустить фоновый процесс
Чтобы запустить программу, пока вы продолжаете работать в оболочке, запустите команду, остановите ее и поместите в фоновый режим с помощью Ctrl + Z. Чтобы запустить программу непосредственно в фоновом режиме, добавьте амперсанд (&) в конце команды следующим образом:
найдите /usr > /tmp/allusrfiles &
Запишите номер задания и идентификатор процесса. Имейте в виду, что вы не можете запускать команды, требующие ввода с терминала, в фоновом режиме.
Вы можете использовать рабочие места команда для отображения всех программ/команд, работающих в фоновом режиме или тех, которые вы остановили (используя Ctrl + Z).
рабочие места
Как возобновить активные и фоновые процессы
Чтобы продолжить задание, переведенное в фоновый режим, используйте кнопку фг команда, и она выведет команду на передний план.
фг %
Точно так же, если вы остановили выполнение команды в фоновом режиме, вы можете снова запустить ее в фоновом режиме с помощью команды bg следующим образом:
ГК %
Уничтожение процессов в Linux
Точно так же, как графический инструмент, такой как System Monitor, позволяет вам завершать, останавливать и продолжать процесс, вы также можете использовать инструменты командной строки, такие как убийство а также убить всех послать сигнал запущенному процессу.
Помимо простого уничтожения процесса, команда kill также помогает отправлять различные сигналы для управления поведением процесса.
Вы можете использовать имена или числа для использования сигнала.
убить -сигнальный номер
убить -signalname
Например, следующие команды отправляют сигнал SIGKILL процессу с PID 1987:
убить -9 1987
убить -SIGKILL 1987
Наиболее часто используемые технологические сигналы:
Вариант | Описание |
СИГКИЛЛ (9) | Сразу убивает процесс |
СИГТЕРМ (15) | Завершает процесс |
SIGSTOP (28.19.25) | Останавливает процесс |
СИГКОНТ (28.19.25) | Продолжает процесс после его остановки |
СИГУП (1) | Сообщает процессу прочитать его файл конфигурации |
Обратите внимание, что разные процессы по-разному реагируют на эти сигналы, но они не могут остановить сигналы SIGSTOP и SIGKILL. Введите следующую команду, чтобы узнать больше об этих сигналах:
человек 7 сигнал
Узнать больше: Как завершить не отвечающие процессы в Linux с помощью kill и pkill
Обновление процессов в Linux
Ядро Linux отдает приоритет запущенным процессам и назначает системные ресурсы с учетом привилегий учетной записи пользователя. Ядро также учитывает еще один фактор, а именно "хорошее" значение каждого запущенного процесса.
По умолчанию значение nice для процесса равно нулю, но вы можете установить диапазон от -20 до 19. Некоторые факты об установке приоритет процесса с nice и renice значения:
- Процесс с низким значением nice имеет больший доступ к ресурсам ЦП.
- Обычный пользователь может только изменить приоритеты своих процессов
- Обычный пользователь может устанавливать только значения от -20 до 19 и может устанавливать только более высокие значения.
- Суперпользователь может установить для любого процесса любое значение, высокое или низкое.
Управление процессами в Linux стало проще
В многопользовательской среде есть несколько процессов, требующих достаточных знаний об управлении системными ресурсами для предотвращения узких мест и системных ограничений. Часть задачи включает в себя управление процессами путем их запуска в фоновом/переднем плане, уничтожения или повторной обработки.
Вы также можете узнать о верхней командной утилите для отображения и сортировки процессов и научиться завершать не отвечающие процессы в Linux.
Когда приложение для Linux перестает отвечать на запросы и падает, как его убить? Попробуйте один из этих приемов, чтобы принудительно закрыть программу в Linux.
Читать дальше
- линукс
- Компьютерный процессор
- Команды Linux
- Linux элементарный
Румаиса — независимый писатель в MUO. Она носила много шляп, от математика до энтузиаста информационной безопасности, и теперь работает аналитиком SOC. Ее интересы включают чтение и письмо о новых технологиях, дистрибутивах Linux и обо всем, что связано с информационной безопасностью.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку технических советов, обзоров, бесплатных электронных книг и эксклюзивных предложений!
Нажмите здесь, чтобы подписаться