Процесс неожиданно убит в Linux

#linux #process #kill #sigkill

#linux #процесс #убить #sigkill

Вопрос:

Мой процесс завершается на сервере Linux без ручного вмешательства. Я проверил следующие сценарии.

  • Для уничтожения пользователем или администратором не требуется ручного вмешательства
  • Оперативная память и ПОДКАЧКА не исчерпаны
  • ‘strace’ выдает мне сообщение о том, что » убит SIGKILL » — это заставляет меня предположить, что ядро остановило процесс.

Процесс занимает 16,5 ГБ виртуальной памяти, где объем оперативной памяти составляет 16 ГБ, а объем ПОДКАЧКИ — 50 ГБ.

Всего задач: 393, 2 запущенных, 387 спящих, 4 остановленных, 0 зомби

Процессор (ы): 12,8% us, 0,5% sy, 0,0% ni, 86,7% id, 0,0% wa, 0,0% hi, 0,0%si, 0,0% st

Mem: всего 16015M, использовано 8700M, 7315M свободно, 202M буферов

Подкачка: всего 51199 млн, использовано 150 млн, 51048 млн свободно, 5906 МЛН в кэше

PID USER PR NI VIRT RES SHR S%CPU% MEM TIME КОМАНДА

31466 xyz 20 0 16.4g 1.3g 6704 R 100 8.3 0: 16.99 тест *

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

Ответ №1:

Вполне вероятно, что убийца ядра из-за нехватки памяти (ООМ) убил ваш процесс. Вам нужно проверить dmesg вывод, чтобы узнать, какова была точная причина, по которой ядро остановило ваш процесс.

Комментарии:

1. Максим, я проверил вывод dmesg во время завершения процесса. Но из него не было видно никакой информации, связанной с завершением процесса. Правильна ли процедура, которой я следовал?

2. @Sobhan В зависимости от дистрибутива старые сообщения журнала ядра могут быть заархивированы, поэтому вам необходимо проверить эти архивы.

3. Я не мог наблюдать никаких таких сообщений в / var/ log машины