Почему команда killall убивает только один экземпляр процесса?

Иногда мне нужно убить Google Chrome (из которого у меня открыто 2 окна / экземпляры). Оба экземпляра не находятся в режиме инкогнито.

Что я делаю: (на Debian 8)

killall chrome && killall хром

иметь 2 окна хрома закрыты.

Однако я читал, что команда killall должна убивать все экземпляры программы, а не только одну.

Поэтому мне было интересно: почему killall не убивает всех экземпляров, как это предполагало бы название?

  • процесс id и процесс убийства - ps commmand
  • Как закрыть все процессы без перезагрузки машины?
  • Как выйти или отменить команду bad bash?
  • Как запустить telnet через SSH?
  • Как (если возможно) я могу закончить конкретный блокиратор, зависающий программой?
  • Как убить каскад в Linux?
  • Изящный способ убить процесс
  • Как я могу вызвать CTRL ^ C из подсказки пароля?
  • 4 Solutions collect form web for “Почему команда killall убивает только один экземпляр процесса?”

    Возможно, что один из экземпляров chrome игнорирует сигнал SIGTERM , ожидая подтверждения секунды? killall -9 chrome может делать то, что вы хотите.

    Я попробовал это с двумя процессами и, похоже, работает –

     jai@jai-VirtualBox:/tmp$ sleep 100 & [1] 3996 jai@jai-VirtualBox:/tmp$ sleep 60 & [2] 3997 jai@jai-VirtualBox:/tmp$ pgrep -l sleep 3996 sleep 3997 sleep jai@jai-VirtualBox:/tmp$ killall -v sleep Killed sleep(3996) with signal 15 Killed sleep(3997) with signal 15 [1]- Terminated sleep 100 [2]+ Terminated sleep 60 jai@jai-VirtualBox:/tmp$ pgrep -l sleep jai@jai-VirtualBox:/tmp$ 

    Не могли бы вы повторить попытку с -v или -i (интерактивным)?

    вы можете использовать команду top, чтобы показать процесс

     top 

    убить процесс

      kill PID_of_chrome 

    Браузер Chrome запускает несколько потоков при запуске, затем создает дополнительные потоки для каждого окна и / или вкладки, созданной впоследствии.

    По умолчанию killall отправляет SIGTERM всем обработанным с определенным именем («хром» в вашем случае). Но только процессы, способные обрабатывать этот сигнал, будут продолжаться. Те, которые не способны обрабатывать сигнал SIGTERM, не будут закрыты. Вы можете убить их безоговорочно с помощью killall -9

    Linux и Unix - лучшая ОС в мире.