Остановить все процессы пользователя linux

Содержание
  1. Завершить все процессы пользователя на Linux
  2. 2 ответа 2
  3. Похожие
  4. Подписаться на ленту
  5. Завершить процессы пользователя в Linux
  6. Завершение процессов пользователя с использованием grep
  7. Завершение процессов пользователя с использованием pgrep
  8. Завершение процессов пользователя с использованием pkill
  9. Завершение процессов пользователя с использованием killall
  10. Завершение процессов пользователя с использованием slay
  11. Работа с процессами в Linux
  12. Список процессов
  13. Ключи
  14. Примеры
  15. Убить процесс
  16. Подробная информация о процессе
  17. Потребление ресурсов процессами
  18. unixforum.org
  19. убить все процессы пользователя (типа slay)
  20. убить все процессы пользователя
  21. Re: убить все процессы пользователя
  22. Re: убить все процессы пользователя
  23. Re: убить все процессы пользователя
  24. Re: убить все процессы пользователя
  25. Re: убить все процессы пользователя
  26. Re: убить все процессы пользователя
  27. Остановить все процессы пользователя linux
  28. Как завершить все процессы пользователя?

Завершить все процессы пользователя на Linux

Как это сделать? Определить имена пользователей, с правами которых запущенны процессы. Завершить выполнение процессов, запущенных с правами некоторого пользователя.

1) man ps (например, ps aux ) 2) вытащить оттуда PID нужных процессов и послать им TERM (как — варианты уже разные. )

2 ответа 2

Пример, завершаем (хе-хе) все процессы пользователя root :

$ ps au | grep -e '^root' | awk '' | xargs kill -TERM 

Ergo, в этом случае копать в сторону man ps , man grep , man awk , man xargs .

берез со стандартного ввода строчку и запускает команду kill -TERM $@ передав эту строчку как аргументы. Так для каждой

Есть шикарные команды pgrep и pkill из пакета procps-ng

завершит все процессы пользователя USER

покажет все PID пользователя USER

Пример PinkTux можно сократить до:

~# ps aux | awk '/^USER/ ' | xargs kill -9 

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.7.17.43535

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

Завершить процессы пользователя в Linux

Иногда возникают задачи, когда необходимо завершить все процессы пользователя в Linux. Например: Пользователь удален из системы, значительная активность пользователя, в том числе вредоносная.

Для того что бы завершить процессы пользователя Linux, есть несколько инструментов.

Завершить процессы пользователя в Linux

Завершение процессов пользователя с использованием grep

В данном способе мы передаем ID процессов команде kill, полученных от утилиты ps

ps -ef | grep | awk '< print $2 >' | xargs kill -9

Завершение процессов пользователя с использованием pgrep

pgrep позволяет обеспечить более элегантный способ найти все процессы пользователя.

Завершение процессов пользователя с использованием pkill

Использование утилиты pkill, так же довольно простой способ завершить процессы пользователя в Linix. По умолчанию утилита отправляет сигнал SIGTERM.

Читайте также:  Recovery mode linux grub

Завершение процессов пользователя с использованием killall

Способ с использованием killall похож на использование утилиты pkill.

Завершение процессов пользователя с использованием slay

Slay — инструмент командной строки, единственной целью которого является завершение процессов пользователя в Linux. Slay отправляет всем процессам сигнал SIGTERM, если какие-то процессы не были завершены, то через 10 секунд slay отправит им сигнал SIGKILL, доступен в Debian и Ubuntu.

Источник

Работа с процессами в Linux

Обновлено

Обновлено: 29.03.2023 Опубликовано: 09.11.2017

Список процессов

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 661 0.0 0.0 4072 8 tty1 Ss+ Jul03 0:00 /sbin/mingetty
root 662 0.0 0.0 4072 8 tty2 Ss+ Jul03 0:00 /sbin/mingetty
root 16355 0.0 0.0 171636 3308 pts/0 S 15:46 0:00 sudo su
root 16366 0.0 0.0 140896 1556 pts/0 S 15:46 0:00 su
root 16368 0.0 0.0 108316 1944 pts/0 S 15:46 0:00 bash
root 18830 0.0 0.0 110244 1172 pts/0 R+ 16:20 0:00 ps u

  • USER — учетная запись пользователя, от которой запущен процесс.
  • PID — идентификатор процесса.
  • %CPU — потребление процессорного времени в процентном эквиваленте.
  • %MEM — использование памяти в процентах.
  • VSZ — Virtual Set Size. Виртуальный размер процесса (в килобайтах).
  • RSS — Resident Set Size. Размер резидентного набора (количество 1K-страниц в памяти).
  • TTY — терминал, из под которого был запущен процесс.
  • STAT — текущее состояние процесса. Могут принимать значения:
    1. R — выполнимый процесс;
    2. S — спящий;
    3. D — в состоянии подкачки на диске;
    4. T — остановлен;
    5. Z — зомби.
    6. W — не имеет резидентных страниц;
    7. < —высоко-приоритетный;
    8. N — низко-приоритетный;
    9. L — имеет страницы, заблокированные в памяти.
  • START — дата запуска процесса.
  • TIME — время запуска процесса.
  • COMMAND — команда, запустившая процесс.

Ключи

Ключ Описание
-A Все процессы.
-a Запущенные в текущем терминале, кроме главных системных.
-d Все, кроме главных системных процессов сеанса.
-e Все процессы.
f Показать дерево процессов с родителями.
T Все на конкретном терминале.
a Все, связанные с текущим терминалом и терминалами других пользователей.
r Список только работающих процессов.
x Отсоединённые от терминала.
u Показать пользователей, запустивших процесс.

Примеры

Поиск процесса с помощью grep:

Убить процесс

Останавливаем процесс по его PID:

Если процесс не завершается, убиваем его принудительно:

Остановить все процессы с именем nginx:

Как и в случае с kill, можно это сделать принудительно:

Можно остановить все процессы конкретного пользователя:

Ищем процесс по имени, извлекаем его PID и завершаем его:

kill `ps aux | grep ‘apache’ | awk »`

* обратите внимание, что запрос может вывести несколько процессов, которые будут попадать под критерии поиска — в таком случае, они будут завершены все.

Подробная информация о процессе

Для каждого процесса создается каталог по пути /proc/ , в котором создаются папки и файлы с описанием процесса.

Читайте также:  Linux tar посмотреть содержимое архива

Примеры использования /proc/

Адрес в ячейках оперативной памяти, которые занял процесс:

Команда, которой был запущен процесс:

Символьная ссылка на рабочий каталог процесса:

Символьная ссылка на исполняемый файл, запустивший процесс:

Увидеть ссылки на дескрипторы открытых файлов, которые затрагивает процесс:

Подробное описание на сайте man7.org.

Потребление ресурсов процессами

Для просмотра статистики потребления ресурсов используем утилиту top:

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21059 root 20 0 157884 2280 1496 R 18,8 0,1 0:00.03 top
1 root 20 0 190996 2964 1652 S 0,0 0,1 6:49.99 systemd
2 root 20 0 0 0 0 S 0,0 0,0 0:01.78 kthreadd
3 root 20 0 0 0 0 S 0,0 0,0 0:24.75 ksoftirqd/0
5 root 0 -20 0 0 0 S 0,0 0,0 0:00.00 kworker/0:0H

  • PID — идентификатор процесса.
  • USER — имя учетной записи, от которой запущен процесс.
  • PR — приоритет процесса.
  • NI — приоритет, выставленной командой nice.
  • VIRT — объем виртуальной памяти, потребляемый процессом.
  • RES — объем используемой оперативной памяти.
  • SHR — количество разделяемой памяти, которое используется процессом.
  • S — состояние процесса.
  • %CPU — процент использования процессорного времени.
  • %MEM — потребление оперативной памяти в процентах.
  • TIME — использование процессорного времени в секундах.
  • COMMAND — команда, которая запустила процесс.

Источник

unixforum.org

убить все процессы пользователя (типа slay)

убить все процессы пользователя

Сообщение VadimD » 20.07.2005 15:23

Может глупый вопрос, но все-же, как убить все процессы пользователя одной командой?
Был у меня скриптик — назывался slay, он справлялся с задачей — но я его где-то затер случайно.
Придумывать и писать новый лениво.
Может есть аналоги или чего нибудь для самоубийства, типа killuser $USER ?

Re: убить все процессы пользователя

Сообщение flook » 20.07.2005 15:51

Re: убить все процессы пользователя

Сообщение VadimD » 20.07.2005 16:54

Re: убить все процессы пользователя

Сообщение Lemurian » 21.07.2005 12:56

StraNNicK Бывший модератор Сообщения: 1005 Статус: добрый хиппи Контактная информация:

Re: убить все процессы пользователя

Сообщение StraNNicK » 21.07.2005 12:59

Re: убить все процессы пользователя

Сообщение T04ka » 21.07.2005 13:05

(Lemurian @ Четверг, 21 Июля 2005, 16:56) писал(а): а еще есть ALT + SysRq + K — гасит все процессы в текущей консоли

Функция Magic SysRq должна быть включена в ядро при компиляции.
Можно нажать Alt-PrintScreen-s для записи кеша дисков или Alt-PrintScreen-i — убить все процессы за исключением init. Механизм нажатия такой: — нажать Alt — нажать PrintScreen — отпустить Alt — Нажать нужную кнопку — отпустить все.

Re: убить все процессы пользователя

Сообщение flook » 21.07.2005 13:11

(Morda @ Четверг, 21 Июля 2005, 12:05) писал(а): [Механизм нажатия такой: — нажать Alt — нажать PrintScreen — отпустить Alt — Нажать нужную кнопку — отпустить все.

Читайте также:  Значки linux mint стандартные

Это только на глючных терминалах и на полуглючных при использовании правого Alt-а Заявляю как краевед.

Источник

Остановить все процессы пользователя linux

В этой статье мы расскажем о том, как убить все процессы пользователя запущенные в Линукс.

Как мы знаем, Linux — многопользовательская ОС, поэтому с каждым пользователем могут быть связаны его собственные процессы. Такое разделение существует в целях безопасности. Запуская ту или иную программу от имени непривилегированного пользователя, ОС снижает риски несанкционированного проникновения и риски повреждения системных файлов.

Как завершить все процессы пользователя?

Для начала сформируем перечень всех процессов всех пользователей. В терминале Linux выполним следующую команду:

Как видно на скриншоте, имеются процессы, связанные с тремя пользователями (root, mint1 и mint). Допустим, нам срочно понадобилось завершить все процессы пользователя mint1.

Здесь следует немного подробнее остановиться на самом понятии процесса в Linux. Процесс – программа, запущенная в виртуальном адресном пространстве. Каждый процесс имеет свой уникальный номер или идентификатор — PID (Process Identificator). Работая с процессами, операционная система идентифицирует процессы именно по PID.

Для того, чтобы убить ненужные процессы, достаточно убить все PID процессов конкретного пользователя (в данном случае mint1). Для этого можно просто скопировать номера идентификаторов этого пользователя и ввести следующую команду:

Однако, количество PID может быть куда больше двух. Да и выполнить все действия вообще-то тоже можно с помощью одной команды, умещающейся в одну строку.

Например, используем конвейер и программу grep ( символ | обозначает передачу результатов выполнения первой команды второй команде по конвейеру):

С помощью grep были выбраны все процессы пользователя mint1. Далее необходимо из второй колонки слева выбрать все PID. Сделаем это с помощью программы awk, добавив, соответственно, ещё один конвейер:

Теперь нужно убить полученные значения PID. Опять добавим конвейер (в данном и последующих примерах все команды выполняются от имени суперпользователя root) и выполним группу команд:

$ ps au | grep -e ‘^mint1’ | awk » | xargs kill -9

С помощью такой конвейеризованной группы команд мы завершили все процессы пользователя mint1.

Подобный конвейер можно было бы сформировать и так:

$ ps aux | awk ‘/^mint1/ ‘ | xargs kill -9

Кроме того, для того, чтобы убить все процессы пользователя в Linux, можно воспользоваться также следующими командами:

Однако и это ещё не всё. Нужно ещё проверить наличие процессов, связанных с пользователем mint1, и их состояние. Сделаем это с помощью команды:

Как видите, процессы, связанные с пользователем mint1, отсутствуют. Способов убить все процессы пользователя в Linux достаточно много, мы показали лишь некоторые из них.

Источник

Оцените статью
Adblock
detector