В основном есть 4 способа de Матар эффективно процесс en Linux: убить его по имени, указав часть имени, по PID, указав на окно процесса курсором мыши. Посмотрим по порядку ... |
Kill: убить процесс, используя его PID
Самый сложный, но в то же время самый точный способ убить процесс - использовать его PID («Идентификатор процесса»). Любой из этих 3 вариантов может служить:
kill -TERM pid kill -SIGTERM pid kill -15 pid
Вы можете использовать имя сигнала (TERM или SIGTERM), который вы хотите отправить процессу, или его идентификационный номер (15). Чтобы увидеть полный список возможных сигналов, я предлагаю проверить руководство по уничтожению. Для этого запустите:
человек убить
Давайте посмотрим на примере, как убить Firefox:
Во-первых, вам нужно узнать PID программы:
пс-эф | grep firefox
Эта команда вернет примерно следующее:
1986? Сл 7:22 /usr/lib/firefox-3.5.3/firefox
Мы используем PID, возвращаемый приведенной выше командой, чтобы убить процесс:
kill -9 1986
killall: убить процесс, используя его имя
Эта команда очень проста
killall имя_процесса
При использовании этого метода следует иметь в виду, что если запущено более одного экземпляра этой программы, все они будут закрыты.
pkill: убить процесс, используя часть его имени
Можно убить процесс, указав полное имя или часть имени. Это означает, что вам не нужно запоминать PID процесса для отправки сигнала.
pkill имя_процесса_частей
В свою очередь, этот метод уничтожит все процессы, содержащие введенное слово. Это означает, что если у нас открыто 2 процесса, которые используют слово в имени, оба будут закрыты.
xkill: убить процесс, выбрав окно мышью
Это самый простой и практичный метод. В случае катастрофы просто нажмите Alt + F2, чтобы открыть диалоговое окно, которое позволит вам выполнять команды. Оттуда выполните следующую команду:
Xkill
Курсор мыши превратится в маленький череп. Остается только щелкнуть по окну, которое вы хотите закрыть, и вуаля. Пока, процесс.
Несколько заключительных комментариев
В заключение я хотел бы поделиться некоторыми советами, которые могут быть полезны. В Linux, как и в Windows, когда процесс зависает, соответствующее окно обычно можно закрыть, нажав кнопку «Закрыть» (которая имеет форму X). Через несколько секунд появится окно с вопросом, действительно ли мы хотим убить процесс, поскольку он не отвечает должным образом. Мы говорим да и все.
Это означает, что описанные здесь методы следует использовать, когда ничего не происходит при нажатии кнопки «Закрыть» в соответствующем окне.
В случае серьезной катастрофы не забывайте, что перед нажатием можно выполнить «безопасный» перезапуск.
Наконец, может быть очень полезно узнать, какие процессы выполняются в данный момент. Для этого в различных средах рабочего стола (GNOME, KDE и т. Д.) Есть графические инструменты, облегчающие эту задачу. Однако, если вы не можете получить к ним доступ или просто хотите сделать это из терминала, вы можете выполнить следующее:
топ
Если это не сработает или у вас не установлен соответствующий пакет, вы всегда можете запустить:
ps -A
В нем будут перечислены все запущенные процессы с соответствующими именами и PID.
«Ps -ef | «grep firefox» - это не то же самое, что «pgrep firefox»?
Лично я использую "pidof" для получения PID.
Привет!
я использую чаще всего:
~ $ наверх
показывая нам список активных процессов, затем, если мы дадим «k» или напишем «kill», он попросит нас указать pid процесса, который нужно убить (мы читаем его сверху), а затем введите, чтобы выйти из вершины, нажмите «q».
Очень хорошая запись, но эта форма мне кажется более простой. Если терминал не запускается, мы пробуем ctrl + alt + f [1-6] и делаем это оттуда.
Какие гении, ребята, спасибо за помощь, помогли мне с этим постом !!!
Здравствуйте! Может ли быть так, что команда xkill только удаляет программу X и остается открытой? Потому что со мной всегда случается, что, когда я иду в диспетчер задач, процесс все еще жив, и я должен его убить.
Признаюсь, я новичок. И команды killall и pkill мне очень помогут. Спасибо за загрузку, очень хороший блог.
Привет!
Рекомендую htop для этого лучше всего ...
работает с ncurses
sudo apt-get установить htop
pidof не для всех Unix, например, в Solaris нет этой команды, и это заставляет нас использовать мощный ps.
привет
htop более подробный и удобный
В случае использования PID правильным является $ kill PID, который по умолчанию отправляет сигнал SIGTERM, в случае, если процесс не отвечает, используется $ kill -9 PID, который отправляет сигнал SIGKILL, последний удаляет процесс, не позволяя ему такое же закрытие правильно (например, может быть потеря данных). SIGTERM просит, пожалуйста, SIGKILL дает ему топор 🙂
Большое спасибо, я протестирую, если это случится со мной снова.
запрос. Когда окружение рабочего стола зависает в Ubuntu (я использую Unity), можно ли его перезапустить, не убивая все остальные процессы? Я не очень хорошо разбираюсь в Linux, и иногда со мной случается, что я работаю, и он зависает, единственное, что я делаю, это безопасный перезапуск, но я теряю все, над чем работал.
Не знаю, поняли ли мои сомнения.
привет
Процесс в состоянии зомби нельзя убить традиционным способом.
Подробности здесь: esdebian.org/wiki/matar-proceso-zombie
Для более продвинутых: как убить процесс в состоянии ZOMBIE?
просто чтобы создать небольшой чат 😀
Очень хорошо, именно то, что мне было нужно ..
Правда в том, что команда kill очень полезна. Возможность убить надоедливые процессы, просто вызвав kill - это здорово. Наконец, команда, которая что-то обслуживает.
Теоретический вопрос: уничтожение процесса означает, что он перестает работать. Итак, мой вопрос в другом: если я хочу перезапустить этот процесс, который я убил, как мне это сделать?
ну положи ./(название процесса) &
После этого вы снова запустите его, и ваш PID также выйдет 😀
Отлично, у меня было время искать такую помощь. Мне это было очень полезно. Спасибо вам большое за обмен.
Привет из Сан-Луис-Потоси, Мексика.
Как я могу убить два процесса, зная их PID, в одной команде?
Я думаю, это было 'kill [First PID] [Second PID]
Очень интересная статья. Этот сайт является моим основным сайтом Linux.
Обычно я использую:
пс топор | grep process_name (чтобы найти его в системе)
kill -9 process_id
Я делюсь бесплатным онлайн-курсом по bash, который распространяется:
https://aprendemia.com/cursos/curso-de-bash-scripting Надеюсь, это будет полезно.
а если бы я хотел, чтобы в линуксе был профиль только тот, который закрывается как положено?
пример у меня открыто 2 профиля firefox
но я хочу закрыть только один профиль
профиль 1
профиль 2
Я хочу, чтобы закрылся только профиль 2, как и должна быть команда
заранее спасибо за ответ
как я могу убить процессы переднего плана ubuntu с помощью одной командной строки