Linux: как убить процесс с помощью команды терминала
Опубликованно 15.11.2018 00:36
Представьте себе: вы запускаете программу, работает с ней, и через время, она не отвечает и зависает. Снова запустите приложение, вы не можете из-за того, что его экземпляр до сих пор висит в памяти компьютера. Что делать в этом случае? В первую очередь необходимо выполнить работы программы, и удалить процесс из памяти.
Самый простой и универсальный для того, чтобы убить процесс в Linux-это использование команд терминала. Этот вариант работает на любом дистрибутиве Linux. Процессы в Linux
В операционной системе Linux, процесс, как правило, называют запущенную программу или приложение. Даже процесс, вы можете позвонить с любой задачей, что работает в данный момент под Linux. Любой процесс может выполнять сын.
Все запущенные процессы в Linux, имеет атрибуты: PID — уникальный для каждого процесса идентификации. PPID — идентификатор родительского процесса. Идентификатор пользователя, запустившего процесс. Приоритет. Состояние процесса.
Каждый запущенный процесс находится в одном из условий: "В процессе". Для обозначения этого состояния используется буква R. Процесс, который начал операции в системе, например, ввод или вывод данных, и в ожидании, когда закончится его выполнение, называется "Ожидание". Обозначается буквой S. Процесс, который был остановлен пользователем или ОПЕРАЦИОННОЙ системой Linux, находится в состоянии "Остановлен". Это состояние обозначается символом, "Зомби" - те процессы, которые больше не используются, но потребляют ресурсы операционной системы. Показаны с буквы Z. Непрерывный процесс может быть завершен до тех пор, пока не завершится операция прямого доступа к памяти. Отображается процесс символ D. Исследование процесса
Перед Linux убить процесс, вы должны сначала найти. Часто для этой цели в Linux с помощью двух команд top и ps. Используйте команду top
Команда top показывает список текущих процессов. Кроме того, в списке содержится много полезной информации для каждого активного процесса, например: PID - уникальный номер процесса; USER - логин пользователя, от которого запущен процесс; PR - приоритет процесса в данный момент времени; NI - приоритеты определены в процессе команда NICE; S - состояние процесса; %CPU - сколько процессорного времени занимает этот процесс (в процентах); %MEM - объем оперативной памяти, который занимает этот процесс (в процентах); TIME+ - сколько времени прошло от начала процесса; COMMAND - программа, которая запустила процесс.
Информации, полученной от топ-команда, организована на уровне процессорного времени используется (столбец %CPU). Пользователь может изменить тип сортировки: сортировать процессы с точки зрения объема занятой оперативной памяти (столбец %MEM), нужно нажать комбинацию клавиш Shift+M; отсортированы по номеру процесса (столбец PID) можно с помощью комбинации клавиш Shift+N; сортировать по времени работы (столбец TIME+) - Shift+T. снова к точке отгрузки, чтобы уровень использования цп - нажмите сочетание клавиш Shift+P. С помощью команды ps
С помощью команды top, вы можете получить много необходимой информации, однако это не самый удобный способ, чтобы получить необходимую информацию, на справедливое судебное разбирательство. Для того, чтобы не искать правильный процесс, вы можете использовать команду ps и отфильтровать список с помощью команды greep. Например, если вы хотите, чтобы найти все процессы, связанные с выполнение Работы, вы можете использовать команду ps axu | grep Opera.
Группа ps имеет следующие параметры: в - отображать процессы всех пользователей; u - показать пользователя, который является владельцем процесса; x - показать все процессы, не привязанные к терминалу. Этот параметр является важным при поиске информации на графическом приложении.
С помощью веревки команд ps и grep, вы можете получить всю информацию, необходимую для разрушения приложение, которое не отвечает. Другие способы, чтобы попытаться процесс
Для того, чтобы найти PID процесса по его имени, есть команда pidof. Формат его использования является следующее: pid+название программы. Например, чтобы найти все PID, связанных с программой Работы, необходимо ввести: pid Работает.
В некоторых случаях бывает так, что программа завершила свое выполнение, но он не выпускал сетевой порт. Для того, чтобы получить информацию, в этом случае, вам нужно ввести команду fuser: fuser -v, tcp 80. Где 80-порт, висит. После чего вы можете убить процесс Linux в порту. Завершение процесса с помощью команды kill
После того как вы узнали PID процесса, и его имя, можно приступить к операции завершения ненужных приложений. Для этого используются две команды: kill - убить процесс с id в Linux и kill - завершить выполнение программы по имени.
Структура команды kill: kill СИГНАЛА PID-регулятора. Где СИГНАЛ-это сигнал, который должен быть отправлен, и PID-это идентификатор процесса.
Параметр SIGNAL завершения процесса равна 9 (SIGKILL). Таким образом, для Linux убить процесс по pid, необходимо ввести в консоли команду: kill -9 9578. Где 9578 уникальный номер процесса.
Команда завершить процесс не является единственным, который может быть отправлен с помощью системы приложение kill. Получить список всех команд, которые могут быть отправлены команды с помощью kill, вы можете, введя команду kill -l.
Полезно также знать и другие значения, которые может принимать параметр СИГНАЛА. Например, для перезагрузки приостановил программу вы можете использовать опцию HUP. Сигнал SIGTERM не останавливает программу сразу, а дает время, чтобы быть завершена правильно, то приложение сохраняет данные, заканчивает свое выполнение, и освобождает все выделенные ресурсы. Как в Linux убить процесс по имени
Если известно название программы, которую вы хотите выполнить, вы можете использовать команду killall. Например, для того, чтобы уничтожить все процессы связанные с приложением Opera вам нужно ввести команду: killall -9 Opera.
Правда, эта команда не всегда заканчивается процессы, связанные с разрушается программы. Если после выполнения предыдущей команды вы набираете комбинацию ps aux | grep Opera, и вы увидите, что некоторые процессы еще продолжаются, лучше всего заключить с помощью применения системы kill.
В некоторых случаях, для Linux убить процесс, запущенный другим пользователем, могут быть необходимы права root. Тогда первая команда завершения процесса нужно ввести команду sudo.
Вот все сведения, необходимые пользователю для управления процессами. Тем не менее, эта тема не проста для начинающих, но освоить ее необходимо, так как все действия операционной системы, производится с помощью процессов. Для того, чтобы научиться управлять, нужно немного практики. Автор: Виталий Черкасов 26 Октября 2018 года
Категория: обо всём