Как принудительно закрыть приложение в Linux

Как принудительно закрыть приложение в Linux

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

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

Шаг 1 — найдите процесс по имени

Самый удобный способ — использовать команду pgrep. Она ищет процессы по части названия и может сразу показать полную команду:

pgrep -af текст

Для примера представим, что у нас завис встроенный в Ubuntu текстовый редактор. В этом случае команда будет выглядеть так:

pgrep -af gnome-text-editor

В ответ вы увидите строки вида:

2893 /usr/bin/gnome-text-editor

Здесь 2893 — это PID, уникальный идентификатор процесса.

Если не уверены в точном названии, можно «подглядеть» через связку ps + grep:

ps aux | grep текст

Лайфхак: у приложений из Snap и Flatpak названия процессов иногда отличаются от названия в меню. В таких случаях помогает ключ -a у pgrep: он показывает весь запуск. Так намного легче понять, что именно искать.

Шаг 2 — попробуйте закрыть приложение «мягко»

Для начала попробуем договориться по-хорошему и отправим процессу «вежливый» сигнал завершения. Так программа успеет сохранить файлы:

kill -TERM PID

То же самое можно сделать по имени (без поиска PID), если вы уверены в названии:

pkill -TERM gnome-text-editor

Шаг 3 — если не помогло, то используйте более бескомпромиссный вариант

Иногда приложение зависает намертво и не реагирует. Тогда придется использовать «силовой» вариант:

kill -KILL PID

# эквивалентно:

kill -9 PID

Или по имени:

pkill -9 gnome-text-editor

Важно: жёсткое завершение не даёт программе шанса на сохранение. Применяйте его только когда мягкий способ не сработал.

Несколько удобных приёмов

Иногда запущено несколько одинаковых окон одной программы. Чтобы закрыть их все разом:

killall gnome-text-editor

Если процесс «прячется» и вы никак не можете угадать строку для поиска — добавьте ключ -f к pgrep, он ищет по полной команде:

pgrep -fl gnome

Ещё один полезный сценарий: хотите просто «посмотреть, что есть», а потом точечно закрыть. Сначала:

pgrep -af chrome

Затем выберите нужный PID из списка и отправьте -TERM или -9, как выше.

Что делать, если интерфейс системы завис целиком

Бывает, что не реагирует весь рабочий стол —  панель, меню, список окон. В этом случае можно переключиться на текстовую консоль, завершить «упрямые» процессы и вернуться обратно.

  1. Нажмите Ctrl + Alt + F3 (или F4/F5 — зависит от системы). Появится чёрный экран с запросом логина.
  2. Введите имя пользователя и пароль.
  3. Найдите и завершите зависшую программу как описано выше.
  4. Вернитесь в графический интерфейс Ctrl + Alt + F1 или Ctrl + Alt + F2 (на некоторых сборках — Ctrl + Alt + F7).