Як я вбиваю процес, який не загине?


18

Я не в змозі вбити процес за допомогою будь-якої з відомих мені методик ("Примусовий вихід" у "Моніторі діяльності" top, killallз терміналу), і мені цікаво, чи можна зробити якісь додаткові кроки.

введіть тут опис зображення

~ $ sudo killall -KILL 77439
Password:
No matching processes were found
~ $ killall -KILL 77439
No matching processes belonging to you were found
~ $ killall 77439
No matching processes belonging to you were found
~ $ killall Mathematica
No matching processes belonging to you were found

FWIW процес - це "Mathematica", який я не можу повторно запустити, вийти або примусити вийти, або зразок, ні за назвою, ні за PID, і, мабуть, має деякі незвичайні побічні ефекти (знімки екрана не з'являються, не можна порожнє сміття та навіть не може вимкнути систему).

Чи є додаткові кроки, які можна зробити, щоб насправді вбити погано поведений процес?


Чи можете ви знайти цей процес за допомогою верху в терміналі?
Pierobon

1
Наступного разу, коли ця проблема виникне, будь ласка, додайте висновок ps alx | egrep '[ /](PID|Math)'до свого питання.
дан

@danielAzuelos: Гарна порада. Зроблю.
orome

Відповіді:


35

killallвбиває за назвою процесу (що, безумовно, не є 77439 і, швидше за все, також не є Mathematica). Ви можете використовувати kill 77439або (якщо це не вдалося) kill -9 77439замість цього (але якщо процес дійсно застряг, проблему вирішить лише перезавантаження).

Крім того, через спосіб надсилання / обробки сигналів (як kill -9) працює в Unix / OS X, виникають ситуації, коли процес буде неможливим. Один типовий приклад цього - якщо процес застрягає під час доступу до якогось зовнішнього пристрою і ніколи фактично не отримує управління. У таких ситуаціях перезавантаження - єдиний спосіб позбутися від процесу.


2
Вбивство звучить так, як воно повинно йти так само, як це сказано, але насправді його слід називати «надсилати сигнал переривання», оскільки існує багато різних типів вбивства, які воно може здійснити. Використовуючи параметри, -9по суті, використовується найпотужніша форма закінчення з крайньою забобоною, яка доступна ...
stuff

1
$ kill -9 PID завжди робить для мене трюк, навіть якщо це настільки інвазивно.
Пієробон

Тож здається, що Mathematica просто незвично погано поводиться. Врешті-решт мені довелося примусити відключити (регулярне вимкнення висіло). У мене немає жодної проблеми з будь-яким іншим додатком, але у Mathematica це було не раз.
orome

Ось ще кілька деталей про те, що може спричинити заїдання процесів.
ВВП2

Я другого вб'ю -9. Єдиний раз, коли у мене стався збій "sudo kill -9", було застосовано систему, яка була повністю захищена і потребувала перезавантаження.
MikeP

-3

Запуск macOS Mojave 10.14 Beta 1, мені довелося виконати наступне, щоб отримати будь-яку тягу:

sudo xcscontrol --reset   

2
Що саме це робить / навіщо це потрібно?
пкемб

xcscontrolце контроль керування сервером Xcode і, схоже, не має відношення до погано поведеного процесу?
Метт Сефтон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.