Все еще жив, еще жив после убийства -9 / SIGKILL

Процесс apache2 застрял на моем сервере и вызвал проблемы с другими службами. (оригинальная проблема: kerneloops после отсоединения устройства USB)

root@server:~# ps aux | grep apache2 | grep -v grep www-data 12917 0.0 0.1 412148 16156 ? D Jun27 0:00 /usr/sbin/apache2 -k start 

Естественно, я kill его. он все еще жив. поэтому я kill -9 его. Он все еще «жив».

Теперь в этом вопросе возникает serverfault / unix & linux-worthy: есть ли способ вернуть порт 443, не делая очевидной вещи: перезагрузка? Установлен Iptables.

Обновление: я не мог решить проблему с перезагрузкой. Общий подход (использовать lsof или /proc/$PID/fd чтобы узнать, который и избавиться от этого диска), как описано здесь и в «дубликате», вполне мог бы работать, если бы не дополнительные (возможно) аппаратные дефекты.

  • Как убить процесс с помощью одной команды?
  • Приостановить процесс, не убивая его
  • Как убить процесс, который говорит «Операция не разрешена» при попытке?
  • Может ли скрипт работать даже после его смерти?
  • Как убить все процессы с использованием данного GPU?
  • killall <имя процесса> по всей системе
  • killall не работает, если я вызываю его из скрипта
  • Отправьте процесс в фоновый режим с помощью PID
  • One Solution collect form web for “Все еще жив, еще жив после убийства -9 / SIGKILL”

    Состояние «D» неудобно. Процесс может быть убит только тогда, когда он находится в пользовательском пространстве (его код делает все, что делает). Когда вызывается системный вызов (чаще всего проблема – операции ввода-вывода), ядро ​​берет на себя, пока не вернется системный вызов. В режиме ядра процесс не может быть убит. Прерывание кода ядра опасно для всей системы, и, кроме того, это также философский вопрос, если процесс в режиме ядра должен слушать сигналы, учитывая, что он не контролируется.

    Таким образом, единственным выходом из режима ядра является тайм-аут / прерывание от самого кода. Операции ввода-вывода на сетевых дисках обычно чрезмерно защищены и не хотят отказываться от потери данных. Если ваш сетевой диск недоступен (или любой другой ввод-вывод, доступ к устройству / … сбой), ваш процесс может ждать почти бесконечно в состоянии «disk zombie».

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

    Interesting Posts

    Какой процесс создал это окно без привязки PID?

    Скопируйте / вставьте текстовые выделения между tmux и буфером обмена

    Несколько файлов журнала с экраном

    В скобках действительно помещается команда в подоболочку?

    grep с шаблоном из одного файла (3.2Gb), соответствующего в другом файле (4.8Gb)

    Bash для соответствия каталогам, имена которых начинаются с точки (периода), будучи «явным», вместо использования «shopt -s dotglob»?

    Каков список кэшей разных типов в файловых системах Linux?

    Предотвратите пробуждение мыши

    почему kjournald использует так много пишет?

    Есть что-то вроде «общих команд Linux»?

    Поиск строки в файлах

    Обработать несколько файлов и распечатать имя файла без расширения и значение определенного ключа

    Как создать детерминированный tar.gz с помощью git-архива?

    Где найти информацию о xkb_symbols (т.е. dead_acute, KP_1, Delete, Down)

    Как переходить на виртуальный IP-адрес в качестве шлюза

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