Когда программа перестает отвечать на запросы в Windows, большинство пользователей знают, как остановить ее, нажав Ctrl + Alt + Delete на своей клавиатуре, нажав опцию «Диспетчер задач» и закрыв ее оттуда. Такой подход не совсем переносится на дистрибутивы Linux, такие как Ubuntu, но это не означает, что у вас не хватает вариантов, когда программа падает.
Наоборот, существует довольно много способов закрыть программу в Ubuntu с помощью CMD. Если вам удобно пользоваться терминалом, вы можете использовать команды, такие как killall или xkill, для принудительного закрытия проблемных программ, или вместо этого вы можете использовать приложение System Monitor.
Использование системного монитора для принудительного закрытия работающего процесса Ubuntu
Хотя достаточно легко закрыть открытый процесс в Ubuntu с помощью терминала, новичкам может быть неудобно делать это. Но пользователю Ubuntu не нужно подходить к терминалу, чтобы принудительно закрыть сбойную программу — вместо этого вы можете использовать приложение System Monitor.
Приёмы и хитрости в терминале GNU/Linux
Программы для Windows, мобильные приложения, игры — ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале — Подписывайтесь:)
Системный монитор работает так же, как Диспетчер задач делает для ПК с Windows. Он перечисляет все запущенные процессы на вашем ПК, а также предоставляет вам информацию в реальном времени о вашем процессоре, оперативной памяти и использовании диска. Это также позволяет принудительно закрыть любое сбойное программное обеспечение, которое не отвечает или не закрывается напрямую.
- Чтобы принудительно закрыть программу в Ubuntu с помощью системного монитора, нажмите кнопку «Показать приложения» в нижней части дока Ubuntu. В списке приложений нажмите значок «Системный монитор», чтобы запустить его.
- Приложение System Monitor запустится с видимой вкладкой «Процессы» по умолчанию — если этого не произойдет, нажмите на вкладку «Процессы» вверху. В списке процессов найдите и найдите процесс (или процессы) для сбойной программы, щелкните запись правой кнопкой мыши и выберите параметр «Убить». Или выберите процесс и нажмите кнопку «Завершить процесс» в нижней части окна «Системный монитор».
- Системный монитор запросит подтверждение, что вы хотите завершить запущенный процесс. Для подтверждения нажмите кнопку Kill Process.
Если он прошел успешно, процесс должен исчезнуть из списка процессов системного монитора. Если у программы было открытое окно, это окно также должно закрыться в этой точке.
Если System Monitor не удалось успешно закрыть программу, вам нужно будет вместо этого попробовать использовать терминал.
Как закрыть открытое окно с помощью команды xkill
В большинстве случаев программное обеспечение System Monitor принудительно закрывает программу в Ubuntu. Если этого не произойдет, вам придется переключиться на терминал, чтобы закрыть все не отвечающие программы.
К счастью, есть простая в использовании команда под названием xkill, которая позволит вам принудительно закрыть любую программу с открытым окном.
Как закрыть приложение [если оно зависло]
- Большинство современных версий Ubuntu должны поставляться с установленным пакетом xkill, но, если вы обнаружите, что он не установлен, вам необходимо сначала установить xkill, прежде чем вы сможете его использовать. Откройте терминал и введите sudo apt install xorg-xkill, чтобы сделать это. После установки просто введите xkill или sudo xkill, чтобы начать его использовать.
- Вывод терминала скажет вам выбрать окно, чей клиент вы хотите убить кнопкой 1. Другими словами, используйте вашу мышь, чтобы нажать на открытое окно — xkill закроет это для вас. После уничтожения выходной терминал ответит сообщением создателя-убийцы перед завершением.
Это будет работать только для программ, которые явно не отвечают, включая любые программы с окном GUI, с которым вы можете взаимодействовать.
Принудительное закрытие программы в Ubuntu с помощью команд pkill, kill или killall
Использование xkill требует использования Ubuntu с графическим интерфейсом. Если вы используете безголовую версию Ubuntu без установленного графического интерфейса, например Ubuntu Server, вам нужно будет вместо этого использовать команды pkill, kill или killall.
Команды kill и pkill завершат любой отдельный процесс, запущенный на вашем ПК, а killall уничтожит все связанные процессы. Некоторые программы (например, Google Chrome) используют несколько системных процессов, поэтому использование kill или pkill может не обязательно завершать их, если программа перестает отвечать на запросы.
- Чтобы использовать kill, вам нужно знать присвоенный ему номер идентификатора процесса (PID) — откройте терминал и введите top, чтобы просмотреть список запущенных в данный момент процессов. Номер идентификатора процесса находится в столбце PID, а имя процесса / программы — в столбце Command.
- Чтобы остановить терминал с помощью kill, введите kill pid, заменив pid на идентификатор вашего процесса (например, kill 582). Если это не работает, введите sudo kill pid. Успешное завершение процесса не должно приводить к каким-либо дополнительным выводам терминала, но вы можете снова набрать top, чтобы перепроверить.
- Команде pkill не требуется номер идентификатора процесса, но требуется имя пакета. Вы можете проверить это, используя top сначала в столбце Command. Когда вы будете готовы, введите pkill process, заменив процесс именем пакета (или sudo pkill, если процесс не завершится). Как и в случае с kill, успешная команда pkill не возвращает никаких сообщений или выходных данных.
- Если в программе несколько процессов, вы можете использовать команду killall, чтобы завершить их все сразу. Как и pkill, здесь используется имя пакета — используйте top, чтобы найти его в столбце Command. Чтобы использовать killall, введите killall process или sudo killall process, заменив процесс именем пакета. Как и pkill, никакие сообщения не будут возвращены на терминале, если команда выполнена успешно.
Эффективное обслуживание Ubuntu
Даже когда запущенное программное обеспечение перестает отвечать на запросы, Ubuntu предоставляет вам инструменты для контроля. Теперь вы знаете, как закрыть процесс в Ubuntu с помощью терминала, вы можете воспользоваться другими классными командами Linux-терминала для резервного копирования вашего ПК, приостановить выполнение команд вместо их завершения и многое другое.
Сбой программы должен быть редким явлением, но если это происходит чаще, чем должно, это может указывать на проблему с вашей установкой Ubuntu. Вам нужно разобраться с некоторыми из распространенных причин сбоев Ubuntu, чтобы (надеюсь) решить ваши проблемы.
Программы для Windows, мобильные приложения, игры — ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале — Подписывайтесь:)
Источник: mexn.ru
Горячие клавиши в терминале Linux
Давным-давно, такие слова как «hot keys» и «keyboard shortcuts» мне не всегда удавалось перевести на русский без потери лица. Как-то раз, я написал «клавиатурные сокращения», чем сразу же привлёк косые взгляды и вызвал смелые медицинские фантазии. Но вроде бы сейчас принято везде говорить и писать «горячие клавиши». О них и поговорим.
Данная заметка — шпаргалка по линуксовой оболочке Bash и смежным компонентам. Часть приводимых ниже команд относится к библиотеке Readline, часть — к сигналам Linux, однако такие подробности нам здесь не важны. Если вам приходится часто иметь дело с терминалом в Linux (и вы не меняли Bash на другой шелл), то будет очень полезно использовать эти самые «сокращения» на благо себе и в мирных целях. Текст написан для начинающих пользователей, но кто знает — может быть и вы найдёте в нём что-то новое и полезное для себя.
Для удобства будем считать, что по умолчанию под терминалом мы понимаем стандартную в настольной редакции Ubuntu программу «Терминал Gnome».
Вкладки
В программе “Терминал Gnome” предусмотрены вкладки, и работают они аналогично вкладкам в веб-браузере или файловом менеджере. Иными словами, если вам нужно несколько терминалов, вовсе не обязательно открывать несколько окон. Достаточно одного окна с несколькими вкладками. Ниже приведены горячие клавиши, относящиеся ко вкладкам:
Ctrl+Shift+T — открыть новую вкладку;
Ctrl+Shift+W или Ctrl+D — закрыть текущую вкладку (или весь терминал, если вкладка одна);
Ctrl+Shift+N — открыть новое окно терминала из текущего.
Со временем вы можете оказаться в ситуации, когда вкладок станет действительно много, и тогда возникнет вопрос о навигации между ними. Вам пригодятся следующие сочетания клавиш:
Ctrl+PgDn — перейти на следующую (справа) вкладку;
Ctrl+PgDn — перейти на предыдущую (слева) вкладку;
Ctrl+Shift+PgDn — сдвинуть вкладку вправо;
Ctrl+Shift+PgUp — сдвинуть вкладку влево.
Alt+1 — перейти на первую по счёту вкладку. Подставьте другую цифру для нужной вам вкладки. Данный способ позволяет «дотянуться» максимум до десятой по счёту вкладки.
Навигация
Три очень часто используемые комбинации для копирования и вставки текста, а также отмены выполняющейся команды:
Ctrl+Shift+С — копирование в буфер обмена;
Ctrl+Shift+V — вставка из буфера обмена;
Ctrl+C — прерывание выполняющейся команды или очистка текущей строки.
Для того чтобы выделить нужный текст в терминале, вам потребуется воспользоваться мышью. Тем не менее, в программе “Терминал Gnome” имеется встроенное средство поиска текста, которое позволяет искать как по обычному фрагменту, так и по регулярному выражению:
Ctrl+Shift+F — вызов встроенного поиска по любому тексту в терминале.
Если команда в терминале слишком длинная, или вы сделали опечатку в начале и не сразу это заметили, вы можете вернуться в начало строки. А затем — снова в конец. Вот как это сделать:
Ctrl+A — переместиться в начало строки;
Ctrl+E — переместиться в конец строки.
В терминале Linux можно перемещаться внутри строки также по словам и по отдельным символам (в последнем случае, это аналогично использованию клавиш с боковыми стрелками):
Ctrl+F — переместиться на 1 символ вперед;
Ctrl+B — переместиться на 1 символ назад;
Alt+F — переместиться к следующему слову;
Alt+B — переместиться в начало предыдущего слова.
Управление командами и процессами
Предыдущие команды касались навигации по терминалу и строке ввода команды. Далее стоит рассмотреть управляющие команды Bash, с помощью которых можно запускать, останавливать, ставить на паузу и возобновлять команды и процессы. Вы уже знаете, что запущенный в терминале процесс можно прервать по Ctrl+C, но полезно также знать и некоторые нюансы.
В терминале Linux вы можете не только завершать программы полностью, но и ставить их на паузу. Затем выполнение программы можно возобновлять, причём, как с возвратом интерактивной командной строки, так и без него:
Ctrl+Z — приостановка процесса;
команда bg — возобновление процесса с возвратом командной строки (процесс продолжает выполнение в фоне);
команда fg — возобновление процесса, при котором он удерживает командную строку за собой (процесс выполняется на «переднем плане»).
Процессы также можно приостанавливать и возобновлять. Запустите какую-либо команду, например htop , и нажмите Ctrl+Z. Сначала будет казаться, будто команда завершилась, но она будет числиться в списке запущенных процессов ( ps -a ) и появится вновь после ввода команды fg.
Если повторить эксперимент с графическим приложением, например, введя команду firefox , то можно будет использовать для его «оживления» как fg , так и bg . При любом варианте приложение останется «закреплённым» за текущим терминалом: если вы закроете его, то оно тоже завершится.
Существует и другой тип «приостановки»: временное прекращение вывода выполняющейся команды. Как консольное, так и графическое приложение может быть запущено в терминале, в который будет выводиться текущая диагностическая информация. Иногда бывает очень удобно временно прекратить постоянный вывод сообщений без завершения самого приложения. Для этого пригодятся следующие сочетания клавиш:
Ctrl+S — прекратить обновление вывода команды;
Ctrl+Q — возобновить вывод команды.
История команд
Bash умеет запоминать все введённые вами команды. Пока терминал запущен, они хранятся в оперативной памяти компьютера, а при выходе из терминала записываются в долговременное хранилище в файле ~/.bash_history .
Если вы точно знаете, что вводили нужную вам команду раньше, поищите её в истории:
history — вывод истории команд;
Если вы помните хотя бы часть команды, поиск можно уточнить:
history | grep — пример уточняющего поиска по истории командам.
У каждой команды в истории есть номер. Введите этот номер, поставив вначале восклицательный знак, и Bash выполнит соответствующую команду:
!151 — выполнить команду под номером 151 из истории;
!151: — показать команду номер 151, но не выполнять её;
!! — повторно выполнить последнюю введенную команду.
В Bash имеется интерактивный режим поиска по истории команд. Нажмите Ctrl+R и начните набирать часть команды. Bash сам предложит вам первый совпадающий вариант. Если он не подходит, нажимайте Ctrl+R дальше для перебора вариантов. Когда нужный вариант будет найден, нажмите Enter.
Интересно, что у этой клавиши ввода есть два аналога — вместо Enter можно нажать Ctrl+M или Ctrl+J.
Самый простой способ перемещаться по истории команд — стрелки «вверх» и «вниз» на клавиатуре. Они тоже имеют дубликаты:
Ctrl+P — вывести предыдущую команду;
Ctrl+N — вывести следующую команду.
Редактирование команд
Самое время рассмотреть средства редактирования команд — они в Bash весьма продвинутые. Удобное перемещение в начало и конец строки, выборочное удаление символов и слов — это лишь часть возможностей, которые могут пригодиться пользователю. За редактирование команд отвечают следующие сочетания клавиш:
Ctrl+U — удалить весь текст слева от курсора;
Ctrl+K — удалить весь текст справа от курсора;
Ctrl+W — удалить 1 слово или параметр слева от курсора;
Ctrl+D — удаление текущего символа (аналогично Del);
Ctrl+H — удаление предыдущего символа (аналогично Backspace);
Alt+D — удалить всё справа от курсора до ближайшего пробела;
Alt+Backspace — удалить всё слева от курсора до ближайшего пробела;
Alt+T — поменять местами текущее слово с предыдущем;
Esc+T — поменять местами два предыдущих слова;
Tab — автодополнение команды после ввода её первых символов.
Ещё одна любопытная деталь: у Bash имеется собственный буфер обмена, который работает независимо от стандартного буфера (как мы помним, копирование по Ctrl+Shift+C, вставка по Ctrl+Shift+V). Это важно, поскольку у первых трёх команд из предыдущего списка есть дополнительные функции: они не просто удаляют часть текста, но и копируют его в тот самый отдельный буфер обмена Bash. Поэтому, будет справедливо уточнить:
Ctrl+U — вырезать и поместить в буфер обмена весь текст слева от курсора;
Ctrl+K — вырезать и поместить в буфер обмена весь текст справа от курсора;
Ctrl+W — вырезать и поместить в буфер обмена 1 слово или параметр слева от курсора;
Кстати, для вставки скопированного текста обратно сработает комбинация Ctrl+Y.
Напоследок
Конечно, выше я описал не все горячие клавиши: их гораздо больше, и полное описание содержало бы в себе кучу бородатой экзотики, унаследованной из древних университетских времён UNIX. В любом случае, не забывайте про man bash (например, там есть замечательный раздел Commands for Moving) и про bind -P .
- bash
- командная строка
- горячие клавиши
- сочетания клавиш
- Настройка Linux
- *nix
- Серверное администрирование
Источник: habr.com
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, просто набрав
xkill
Ваш указатель мыши будет отображать крест (или череп). Щелкните левой кнопкой мыши на приложении-нарушителе, чтобы закрыть его.
- 5 способов выключить компьютер с Linux через терминал
- Как изменить файл Hosts в Linux и управлять им
- Как изменить имя пользователя в Ubuntu, Debian, Deepin, Linux Mint, elementary OS или Fedora
Если невозможно закрыть приложение, не отвечающее на запросы, одним из этих методов, ориентированных на рабочий стол, решение может быть в командной строке…
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 firefox
Все, что вам нужно, это имя процесса и команда killall (возможно, с sudo, если этого требует ваша система).
killall [process name]
Естественно, вы должны использовать эту команду только при необходимости. Это не подходит для большинства не отвечающих программных ситуаций.
7. Создайте комбинацию клавиш Force-Kill
Хотите сэкономить время на закрытие не отвечающего программного обеспечения? Наилучшим вариантом является создание сочетания клавиш. Это даст вам немедленную возможность закрыть приложение, но для этого потребуется xkill.
В Ubuntu откройте Параметры > Устройства > Клавиатура и пролистайте список Комбинации клавиш в самый низ, где вы увидите «+». Нажимаем на «+», чтобы создать новый ярлык. В поля Имя и Команда введите «xkill», затем нажмите кнопку Установить комбинацию клавиш и введите нужную вам комбинацию и нажмите кнопку Добавить. Готово.
В следующий раз, когда вам нужно будет закрыть приложение, просто используйте сочетание клавиш. Указатель мыши станет X, и вы можете щелкнуть в любом месте приложения, которое хотите закрыть.
Избегайте не отвечающего программного обеспечения: обновите свое оборудование
Не отвечающие приложения регулярно вызывают проблемы? Возможно, вы могли бы получить выгоду от внесения некоторых изменений в свой компьютер с Linux.
Установка дополнительной оперативной памяти — это лучший способ повысить производительность вашего компьютера и возможно, именно это вам и нужно, чтобы эти темпераментные приложения перестали отвечать на запросы в будущем.
Итак, в следующий раз, когда приложение или утилита Linux зависнет и перестанет отвечать на запросы, все, что вам нужно сделать, это применить одно из следующих решений:
- Нажмите X в углу.
- Используйте системный монитор.
- Используйте приложение xkill.
- Используйте команду kill.
- Закройте приложения с помощью pkill.
- Используйте killall, чтобы закрыть программное обеспечение.
- Создайте сочетание клавиш.
Если ни одно из этих решений не работает и вы регулярно сталкиваетесь с не отвечающими приложениями в Linux, рассмотрите возможность перехода на облегченную операционную систему Linux.
Источник: komyounity.com