Как снять задачу на linux

Диспетчер задач в Linux — принудительно закрываем программу

Пользователи спрашивают — Как принудительно завершить ту или иную программу в Linux? Как правило это пользователи которые перешли с windows или не так часто сталкиваются с linux. В windows это возможно через диспетчер задач. В linux его нет.

Как открыть диспетчер задач

Если в Windows диспетчер задач открывается, по умолчанию, комбинацией клавиш Ctrl+Alt+Del или Ctrl+Alt+Esc, то в linux данной опции не предусмотрено.

Для того, чтоб открыть диспетчер задач в linux, вначале его надо установить.

Называется в Linux он System monitor. Установить его можно просто из стандартного репозитория, командой в терминале

или при помощи менеджера пакетов Synaptic

После установки вы найдете его в меню приложений, раздел Система

После запуска в нем вы увидите все запущенные процессы

Если выбрать нужный вам процесс и кликнуть по нему правой кнопкой мыши, откроется меню действий над процессом.

В открывшемся меню можно выбрать то, что нас интересует:

Завершить процесс, убить его совсем и так далее.

Так же на вкладке ресурсы мы увидим загруженность нашей системы

На вкладке файловые системы вы можете посмотреть всю информацию о ваших накопителях

Вот такая очень полезная маленькая программка.

Закрыть программу утилитой из терминала

Если вы привыкли работать в терминале или вам это ближе, то есть и вариант для завершения процесса, программы в терминале.

Открываем терминал и ставим маленькую утилиту htop стандартной командой

После установки набираем команду

перед вами откроется аналог диспетчера задач, только в терминале

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

Выбираем нажатием клавиш, что мы хотим с этим процессом сделать.

Нужные клавиши от F1 до F10 с действиями подписаны в нижней строке

Если закрываем программу, то выбираем F9

Затем нас спросят подтвердить наше действие (send) или отказаться, если передумали (Cancel). Нажимаем Enter для завершения начатого или Esc если передумали.

Закрыть программу командой из терминала

Можно закрыть программу или приложение просто командой из терминала.

Для этого нам нужно узнать идентификационный номер процесса.

Набираем команду в терминале

Нужный нам номер — вторая колонка.

Теперь завершаем процесс командой

Где pid — приложения — уникальный номер запущенного процесса, приложения

Если у кого есть, что добавить, оставляйте комментарии, делитесь информацией.

Источник

Диспетчер задач в Ubuntu

Многих новых пользователей Linux, только-только перешедших с Windows, интересует, где же диспетчер задач в Ubuntu. Да и вообще, что делать, если какая-либо программа не отвечает. Но такая вот штука — нет в Ubuntu диспетчера задач, зато есть системный монитор и пара очень полезных консольных команд.

Да и сама система виснет очень редко, зависнуть может только окружение рабочего стола, да и то, если что-то намудрить с настройками. Подробнее о том, что делать в таких случаях, читайте в статье что делать если зависла Ubuntu, а пока поговорим про диспетчер задач.

READ  Как обновить драйвера nvidia geforce 920

Диспетчер задач Ubuntu

Чтобы запустить системный монитор, откройте главное меню системы и наберите в поиске monitor или монитор:

Здесь так же как и диспетчере задач вы можете просмотреть список запущенных процессов, завершать процессы, следить за использованием памяти, центрального процессора и файловых систем. Для этого у программы есть три вкладки:

Чтобы завершить программу кликните, по ней в списке правой кнопкой мыши и выберите:

Если программа после этого не завершилась, можете выбрать в том же меню пункт Убить. Подробнее об этом читайте в статье как убить процесс Linux.

Но если зависло окружение рабочего стола то системный монитор уже не поможет, в этом случае можно воспользоваться всей мощностью терминала Linux. По умолчанию в системе открывается 7 независимых терминалов, в одном из которых запускается окружение рабочего стола. Обычно это седьмой терминал. Переключаться между ними можно с помощью сочетания клавиш Ctrl+ Alt + номер терминала, чтобы открыть первый терминал, нужно нажать Ctrl+Alt+1 и т д:

Здесь нужно авторизоваться, указав сначала логин, затем пароль. После авторизации можно делать всё что угодно, например, перезапустить графическое окружение командой:

sudo systemctl restart display-manager

Если вам нужен аналог диспетчера задач в терминале, можете воспользоваться утилитой htop. Для её установки выполните:

sudo apt install htop

Затем её можно запустить одноимённой командой:

Если вам нужно завершить конкретное приложение, его легче найти командой:

ps aux | grep имя_приложения

Затем завершить его командой:

sudo kill -TERM pid_приложения

Где pid_приложения — уникальный идентификатор приложения в системе, который вы узнали в предыдущей команде, во второй колонке:

На этом всё. Желаю вам, чтобы ваша система никогда не зависала.

Источник

Как убить процесс Linux

Несмотря на то что Linux стабильнее чем Windows, в плане работы программ и различных сервисов, случается всякое и иногда возникает необходимость завершить процесс Linux. Это может понадобиться, если программа завила, когда вы запустили системный сервис в фоне через терминал, а не систему инициализации, а также во многих других случаях, когда убить процесс Linux проще, чем перезагружать всю систему.

В этой статье мы рассмотрим несколько самых распространенных способов завершить процесс Linux. Опишем подробно как происходит остановка процесса и как все сделать правильно.

Как происходит завершение процесса?

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

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

  • SIGINT — самый безобидный сигнал завершения, означает Interrupt. Он отправляется процессу, запущенному из терминала с помощью сочетания клавиш Ctrl+C. Процесс правильно завершает все свои действия и возвращает управление;
  • SIGQUIT — это еще один сигнал, который отправляется с помощью сочетания клавиш, программе, запущенной в терминале. Он сообщает ей что нужно завершиться и программа может выполнить корректное завершение или проигнорировать сигнал. В отличие от предыдущего, она генерирует дамп памяти. Сочетание клавиш Ctrl+/;
  • SIGHUP — сообщает процессу, что соединение с управляющим терминалом разорвано, отправляется, в основном, системой при разрыве соединения с интернетом;
  • SIGTERM — немедленно завершает процесс, но обрабатывается программой, поэтому позволяет ей завершить дочерние процессы и освободить все ресурсы;
  • SIGKILL — тоже немедленно завершает процесс, но, в отличие от предыдущего варианта, он не передается самому процессу, а обрабатывается ядром. Поэтому ресурсы и дочерние процессы остаются запущенными.
READ  Драйвера для монитора lg flatron w1953se

Важно понимать, что нужно дать процессу возможность завершиться корректно. Желательно, чтобы порты и сокеты были освобождены, закрыты и удаленны временные файлы. Поэтому никогда не передавайте сразу SIGKILL. Передавайте сигналы завершения в последовательности, как они перечислены выше.

Сначала Ctrl+C, если это возможно, затем SIGTERM — он хоть и завершает процесс, но делает эту культурно, и только в крайнем случае SIGKILL. А теперь рассмотрим как убить процесс по pid Linux на практике. Если вы всегда используете SIGKILL, тогда на ум приходит такая картинка:

Как убить процесс Linux?

Для передачи сигналов процессам в Linux используется утилита kill. Ее синтаксис очень прост:

$ kill -сигнал pid_процесса

Сигнал представляет собой один из выше перечисленных сигналов для завершения процесса. По умолчанию, если этот параметр не указан, используется сигнал SIGTERM, что является очень правильно. Также нам нужно указать какой процесс нужно завершить. Для этого используется уникальный идентификатор процесса — PID.

Допустим, у нас выполняется утилита ping. Мы хотим ее завершить с помощью kill. Тогда, сначала мы узнаем ее идентификатор с помощью команды ps:

ps aux | grep ping

В первой строчке отобразится сама утилита ping, а во второй сама программа ps. Берем нужный PID и завершаем процесс с помощью SIGTERM:

kill -TERM 20446

И только если после этой команды процесс продолжил висеть, а это вы можете проверить, выполнив ps. Только теперь можно выполнить SIGKILL:

kill -KILL 20446

Теперь снова проверяем:

Если процесс запущен от суперпользователя, то, естественно, вам нужно использовать sudo. Не всегда удобно уничтожать процесс по его PID, как минимум, потому, что вам этот PID нужно еще узнать. Мы могли бы нагородить сложных конструкций с использованием xargs, чтобы вычислять автоматически pid по имени процесса и сразу же его завершать, но в этом нет необходимости. Уже существуют специальные утилиты.

Как завершить процесс с помощью pkill

Утилита pkill — это оболочка для kill, она ведет себя точно так же, и имеет тот же синтаксис, только в качестве идентификатора процесса ей нужно передать его имя. Утилита сканирует директорию proc и находит PID первого процесса с таким именем, затем отправляет ему SIGTERM. Таким образом, вы можете убить процесс по имени Linux. Например, если мы хотим завершить тот же ping:

Также можно вручную задать тип сигнала:

pkill -TERM ping

Вместо ps, вы можете использовать утилиту pgrep для поиска pid процесса, убедимся что наша программа завершена:

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

READ  Как сменить значок приложения windows 10 на свой

Как остановить процесс с помощью killall

killall работает аналогично двум предыдущим утилитам. Она тоже приминает имя процесса в качестве параметра и ищет его PID в директории /proc. Но эта утилита обнаружит все процессы, с таким именем и завершит их. Например:

Как видите, запущено несколько процессов, осталось остановить процесс Linux с помощью killall:

Команда завершит все запущенные утилиты ping, вы можете убедиться в этом еще раз выполнив pgrep:

Выводы

В этой статье мы рассмотрели как убить процесс Linux. Иногда эта задача может быть очень полезной, но важно понимать, что ее нужно выполнять правильно. Нельзя сказать, что передача SIGKILL вместо SIGTERM очень опасна, но так делать не стоит. Надеюсь, эта информация была полезна для вас.

Источник

Аналог диспетчера задач в Linux

Программы имеют свойство зависать — никуда от этого не денешься, даже в Linux. Поэтому один из вопросов, через который обязательно проходит начинающий линуксоид: где в Linux диспетчер задач? Как завершить зависший процесс?

Используем консоль

Стоит сказать, что (как и в Windows, если Вы не знали) один из простейших способов завершить процесс в Linux — сделать это через консоль.

Для этого сначала придется узнать PID процесса, а затем выполнить специальную команду.

Для того, чтобы увидеть все процессы в системе введите:

Результат будет выглядеть так:

В выведенном списке процессов найдите нужный, видите его PID? Он идет вторым значением в каждой выведенной строке. Берем его, и выполняем вводим следующую команду:

Само собой, вместо букв PID надо ввести PID нужного процесса.

Вот, собственно, и все. Осталось добавить пару хитростей.

Если Вы заранее знаете, как называется процесс, можно воспользоваться командой:

ps axu | grep название-приложения

Например, если я захочу найти KTorrent (хотя он у меня ни разу не вис, просто под руку попался) я введу:

ps axu | grep ktorrent

Здесь у нас и представится возможность использовать вторую хитрость — как видите, у KTorrent несколько процессов, чтобы завершить их все, я использую команду killall:

Эта команда завершит их все.

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

Для любителей графического интерфейса

Графические решения для просмотра и завершения процессов в Linux, конечно же, тоже существуют. Их наличие или отсутствие по-умолчанию зависит от Вашего дистрибутива. Если в Вашем дистрибутиве используется среда KDE — нажмите ctrl+escape, чтобы вызвать здешний «диспетчер задач» KRunner. В моем Linux Mint 17.2 KDE выглядит он вот так:

В Linux Mint 17.2, использующем в качестве DE Cinnamon, ничего такого «сходу» не нашлось, однако, установив пакет mate-system-monitor я обрел желаемое.

sudo apt-get install mate-system-monitor

После установки программу можно найти в меню, а выглядит она вот так:

В Ubuntu 14.04 программа System Monitor оказалась сразу включена в дистрибутив, осталось только найти ее в меню.

Ну и наконец, если в Вашем дистрибутиве ничего такого не нашлось, а орудовать в консоли не хочется, можете установить Htop. Хотя работает программа в консоли, интерфейс все-таки вполне можно назвать если не графическим, то псевдо-графическим точно:

Установить в Ubuntu-подобных дистрибутивах можно командой:

Источник