- 7 способов убить не отвечающие программы в Linux
- 1. Убейте программу Linux, нажав «X»
- 2. Используйте системный монитор, чтобы убить процесс в Linux
- 3. Принудительно уничтожать процессы в Linux с помощью xkill
- 4. Используйте команду «kill»
- 5. Используйте «pgrep» и «pkill»
- 6. Убить всё с помощью «killall»
- 7. Создайте комбинацию клавиш Force-Kill
- Избегайте не отвечающего программного обеспечения: обновите свое оборудование
- Как остановить процесс в Linux?
7 способов убить не отвечающие программы в Linux
Программное обеспечение в Linux достаточно надежно, чтобы работать без проблем, но иногда, даже самые лучшие приложения могут зависнуть. Вместо того, чтобы ждать их сбоя, вы можете убить эти не отвечающие программы. На самом деле, существует так много способов убить программы для Linux, что вы можете оказаться избалованными выбором!
Если у вас возникают проблемы с приложением в Linux, вот несколько способов как её решить.
1. Убейте программу Linux, нажав «X»
Вы, наверное, уже пытались уйти и сделать горячий напиток. Если вы вернулись на свой компьютер и обнаружили, что приложение все еще зависло, вероятно, у него было достаточно времени, чтобы снова начать работать. Приложение, не отвечающее на запросы, обычно имеет серые кнопки или параметры, которые не работают. Вы также можете не перемещать окно приложения по экрану.
Итак, каково решение? Нажмите кнопку X в верхнем углу (слева или справа, в зависимости от графической оболочки в которой вы работаете и её настроек). Это должно остановить программу. Вы можете увидеть диалоговое окно с просьбой подождать или принудительно завершить процесс сейчас.
Если все пойдет по плану, некоторые дистрибутивы предложат вам отправить сообщение об ошибке.
2. Используйте системный монитор, чтобы убить процесс в Linux
Следующий вариант – открыть утилиту System Monitor вашей операционной системы Linux. Обычно это находится в меню «Системные инструменты» и отображает список запущенных процессов на вкладке «Процессы».
Чтобы закрыть не отвечающее приложение, просто выберите его и щелкните правой кнопкой мыши. Затем у вас есть три варианта:
- Остановить процесс: это приостанавливает процесс, позволяя продолжить его позже. Это не будет работать в большинстве случаев.
- Завершение процесса: правильный способ закрыть процесс, это безопасно завершит работу приложения, удаляя временные файлы в пути.
- Процесс уничтожения: это крайний вариант, и его следует использовать только в случае сбоя конечного процесса.
Лучше использовать их по порядку. Однако, если приложение регулярно зависает, вы можете использовать команду, которая, как вы знаете, работает.
3. Принудительно уничтожать процессы в Linux с помощью xkill
Другой вариант, который вы можете использовать – это xkill. Это инструмент принудительного уничтожения, предустановленный в Ubuntu, но вы можете установить его через терминал в других дистрибутивах, если это необходимо. При вызове xkill позволит вам закрыть любой процесс на рабочем столе. Установите его с помощью следующей команды:
sudo apt install xorg-xkill
Как только это будет сделано, запустите xkill, просто набрав
Ваш указатель мыши будет отображать крест (или череп). Щелкните левой кнопкой мыши на приложении-нарушителе, чтобы закрыть его.
Если невозможно закрыть приложение, не отвечающее на запросы, одним из этих методов, ориентированных на рабочий стол, решение может быть в командной строке…
4. Используйте команду «kill»
Если ваше приложение не отвечает, а приведенные выше предложения не работают (графический интерфейс может не отвечать), нажмите Ctrl+Alt+T, чтобы открыть Терминал.
Несколько параметров командной строки доступны, чтобы помочь вам закрыть ваше приложение. Более того, их можно использовать либо на вашем компьютере, либо подключившись через SSH с другого устройства.
Команда kill может использоваться здесь, но сначала требуется идентификатор процесса. Вы можете найти это, запустив команду, запрашивающую приложение для его идентификатора процесса:
ps aux | grep [process name]
В результате отобразится идентификатор процесса. Это может быть использовано следующим образом:
kill [process ID]
Обратите внимание, что вам может понадобиться добавить команду с помощью sudo.
5. Используйте «pgrep» и «pkill»
Что если вы не знаете или не можете найти идентификатор процесса? Вот тут и появляется команда pkill. Вместо идентификатора процесса просто используйте pkill вместе с именем процесса:
pkill [process name]
Кроме того, вы можете использовать команду pgrep, чтобы найти идентификатор процесса:
pgrep [process name]
… И после этого используйте pkill с идентификатором процесса.
pkill [process ID]
Как и в случае команды kill, процесс должен завершиться в течение 5 секунд.
6. Убить всё с помощью «killall»
Не повезло с kill или pkill? Пришло время использовать ядерную опцию: killall.
К счастью, это не так разрушительно, как могло бы быть. Команда killall завершит работу всех экземпляров указанной программы. Таким образом, вместо того, чтобы убивать одно окно Firefox, следующая команда завершит их все:
Все, что вам нужно, это имя процесса и команда killall (возможно, с sudo, если этого требует ваша система).
killall [process name]
Естественно, вы должны использовать эту команду только при необходимости. Это не подходит для большинства не отвечающих программных ситуаций.
7. Создайте комбинацию клавиш Force-Kill
Хотите сэкономить время на закрытие не отвечающего программного обеспечения? Наилучшим вариантом является создание сочетания клавиш. Это даст вам немедленную возможность закрыть приложение, но для этого потребуется xkill.
В Ubuntu откройте Параметры > Устройства > Клавиатура и пролистайте список Комбинации клавиш в самый низ, где вы увидите «+». Нажимаем на «+», чтобы создать новый ярлык. В поля Имя и Команда введите «xkill», затем нажмите кнопку Установить комбинацию клавиш и введите нужную вам комбинацию и нажмите кнопку Добавить. Готово.
В следующий раз, когда вам нужно будет закрыть приложение, просто используйте сочетание клавиш. Указатель мыши станет X, и вы можете щелкнуть в любом месте приложения, которое хотите закрыть.
Избегайте не отвечающего программного обеспечения: обновите свое оборудование
Не отвечающие приложения регулярно вызывают проблемы? Возможно, вы могли бы получить выгоду от внесения некоторых изменений в свой компьютер с Linux.
Установка дополнительной оперативной памяти – это лучший способ повысить производительность вашего компьютера и возможно, именно это вам и нужно, чтобы эти темпераментные приложения перестали отвечать на запросы в будущем.
Итак, в следующий раз, когда приложение или утилита Linux зависнет и перестанет отвечать на запросы, все, что вам нужно сделать, это применить одно из следующих решений:
- Нажмите X в углу.
- Используйте системный монитор.
- Используйте приложение xkill.
- Используйте команду kill.
- Закройте приложения с помощью pkill.
- Используйте killall, чтобы закрыть программное обеспечение.
- Создайте сочетание клавиш.
Если ни одно из этих решений не работает и вы регулярно сталкиваетесь с не отвечающими приложениями в Linux, рассмотрите возможность перехода на облегченную операционную систему Linux.
Источник
Как остановить процесс в Linux?
в Linux 05.09.2019 0 187 Просмотров
Бывают моменты, когда процесс в вашей системе Linux начинает вести себя странно, и вы, как администратор, должны остановить его на благо всей системы. Следующие утилиты помогут вам найти процесс и остановить его. Прежде чем мы продолжим, как мы знаем, каждый процесс Linux имеет идентификацию процесса (PID), и нам нужно будет найти конкретный интересующий PID. Для этого мы можем использовать следующие инструменты.
Использование команды ps
Эта команда сообщает о снимке текущего процесса.
Чтобы перечислить все процессы, просто запустите
Чтобы отфильтровать ваш вывод, вы можете использовать каналы, чтобы добраться до нужного вам процесса, например
$ ps aux | Grep Apa
Это перечислит все процессы, которые имеют вышеуказанные буквы в именах своих процессов. Здесь вы можете сузить и получить точный PID вашего процесса.
В качестве замены в вашем арсенале команд вы также можете использовать pidof или pgrep следующим образом
Это вернёт PID процесса Zsh
Это также вернёт PID процесса zsh.
После того, как вы обнаружите PID, следующим шагом будет остановка процесса. Например, здесь есть различные инструменты: kill, killall, pkill, top и другие.
Вы должны понимать, что эти команды работают до тех пор, пока у вас есть необходимые разрешения для остановки самих процессов. Если у вас недостаточно прав для остановки процессов других пользователей, они не будут работать. Вы сможете остановить только свои собственные процессы.
Пользователь root, как можно догадаться, является суперпользователем и может уничтожить любой процесс, принадлежащий любому другому пользователю в системе.
Остановить процесс в Linux с помощью команды kill
kill отправляет сигнал процессу. Сигналы могут быть:
SIGHUP, который может быть представлен с 1 и приводит к зависанию процесса.
SIGKILL, который может быть представлен с 9 и приводит к тому, что процесс будет остановлен.
SIGTERM, который может быть представлен 15 и изящно убивает процесс.
Если команда kill выполняется без параметров, по умолчанию используется SIGTERM.
Примеры остановки процесса в действии
Завершает процесс с помощью PID 7089 без сохранения открытых файлов.
$ kill -9 7089
$ kill -SIGKILL 7089
Завершает процесс с PID 7080 после того, как он убедился, что все его файлы сохранены. Это изящно убивает процесс:
$ kill -15 7080
$ kill -SIGTERM 7080
Другая команда, которой вы можете воспользоваться, это команда killall. Если вы знаете название процесса, вам не нужно искать его PID. killall убивает его по имени, как показано ниже.
Для получения дополнительных опций запустите:
Убить процесс в Linux с помощью команды killall
Команда killall убивает процессы по их именам, как указано выше. Просто сделайте так:
$ killall httpd
$ man killall
Убить процесс в Linux с помощью команды pkill
Сигнальные процессы, основанные на имени и других атрибутах
pkill работает аналогично killall. Его синтаксис так же прост, как:
$ pkill [параметры] шаблон
pkill отправляет сигналы процессам на основе имени и других атрибутов.
Использование pkill очень простое, если вы знаете имя процесса для передачи команды и имя процесса, как показано ниже. По умолчанию он использует сигнал SIGTERM, но при желании его можно изменить.
Все параметры команды:
Опции:
– , –signal сигнал для отправки (номер или имя)
-e, –echo показать что убито
-c, –count количество совпадающих процессов
-f, –full использовать полное имя процесса для соответствия
-g, –pgroup
совпадает с перечисленными идентификаторами группы процессов
-G, –group соответствуют реальным идентификаторам группы
-i, –ignore-case соответствие без учета регистра
-n, –newest выбрать последний запущенный
-o, –oldest выберите недавно начатый
-P, –parent
соответствуют только дочерним процессам данного родителя
-s, –session совпадают идентификаторы сеанса
-t, –terminal совпадают с помощью управляющего терминала
-u, –euid совпадают по эффективным идентификаторам
-U, –uid совпадают с реальными идентификаторами
-x, – точное совпадение с именем команды
-F, –pidfile читать PID из файла
-L, –logpidfile не удается, если файл PID не заблокирован
–ns соответствует процессам, которые принадлежат одному и тому же пространству имен как –nslist список, для которых будут рассматриваться пространства имен опция –ns.
Доступные пространства имен: ipc, mnt, net, pid, user, uts
-h, –help показать эту справку и выйти
-V, –version вывести информацию о версии и выйти
Убить процесс в Linux с помощью команды top
Вы можете использовать команду top, чтобы завершить процесс во время его интерактивного сеанса.
Чтобы убить процессы прямо из «верхнего» интерфейса, нажмите «k». Он попросит вас PID процесса, чтобы остановить. Введите PID и нажмите ввод – он использует –
По умолчанию используется сигнал SIGTERM, как показано ниже. Просто нажмите Enter ещё раз, и top сделает все остальное.
Теперь вы знаете, как убить этот поддельный или надоедливый процесс Linux, используя простые инструменты Linux, которые обычно предустанавливаются практически во всех дистрибутивах. Спасибо, что прочитали статью.
Источник