Linux 139Высокая

Exit Code 139 в Linux: segmentation fault

Exit Code 139 означает, что процесс завершился с segmentation fault (SIGSEGV). Обычно это связано с ошибками доступа к памяти.

Обновлено 12 февраля 2026 г.
20-40 мин
Сложно
FixPedia Team
Применимо к:UbuntuDebianCentOSDocker

Exit Code 139 означает, что процесс завершился с ошибкой segmentation fault (SIGSEGV). Это происходит при попытке обращения к недопустимому участку памяти.


Основные причины

  • Ошибка в C/C++ коде
  • Несовместимые или повреждённые библиотеки
  • Повреждённый бинарный файл
  • Проблемы внутри Docker-контейнера

Способ 1: Включение и проверка core dump

Проверьте текущий лимит:

ulimit -c

Если значение равно 0, включите:

ulimit -c unlimited

После повторного падения программы появится файл core.


Способ 2: Анализ через gdb

gdb ./app core

Внутри gdb выполните:

bt

Команда bt покажет stack trace и место падения.


Способ 3: Проверка зависимостей

ldd ./app

Если отображаются строки not found, требуется переустановка библиотек.


Способ 4: Переустановка пакета

Для Ubuntu/Debian:

sudo apt reinstall package-name

Для CentOS:

sudo yum reinstall package-name

Итог

Exit Code 139 указывает на серьёзную ошибку доступа к памяти. Анализ core dump и проверка зависимостей помогают определить источник проблемы и устранить её.

Часто задаваемые вопросы

Что означает Exit Code 139?
Почему возникает segmentation fault?
Как проверить причину segfault?
Может ли Docker вызывать Exit Code 139?

Полезное

Проверка core dump
Анализ через gdb
Проверка библиотек
Переустановка пакета