Как получить дамп ядра apache?

7

У меня проблемы с моим 14.10 Ubuntu Server. При выполнении определенных действий мой apache2 перезапускается с ошибкой ошибки сегментации. Чтобы отладить эту проблему, я хотел бы создать основной дамп. Я сделал следующее:

  • добавлено CoreDumpDirectory /tmp/apache-coredumps в конфигурационный файл
  • Запустить ulimit -c unlimited
  • Запустить apt-get install apache2-dbg php5-dbg
  • перезапустил apache и вызвал ошибку. Журнал утверждает, что в каталоге может быть дамп ядра, однако он пуст.

Я также пытался использовать gdb непосредственно в исполняемом файле apache2, но apache не запускается, если только не запущено через apachectl или service apache2 start .

Как я могу получить дамп ядра для отладки моей проблемы ИЛИ как я могу напрямую присоединить gdb к apache?

    
задан Andreas Hartmann 22.04.2015 в 16:32
источник

1 ответ

4

ulimit -c unlimited влияет только на текущую оболочку.

Вы можете подтвердить это, посмотрев на выход cat /proc/$(pidof -s apache2) .

Я добавил ulimit -c unlimited в /etc/default/apache2 , и теперь cat /proc/$(pidof -s apache2)/limits включает

Max core file size        unlimited            unlimited            bytes
    
ответ дан Jay _silly_evarlast_ Wren 27.04.2015 в 18:19
источник