У меня проблемы с моим сервером 10.10 Ubuntu. После выполнения определенных действий мой 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?
Для первого взгляните здесь: serverfault.com/questions/470407/… для второго здесь: httpd.apache.org/dev/debugging.html#gdb
—
Elder Geek
К сожалению, это не сработало. Я попытался установить разрешения, как было предложено в первой ссылке, но ядро до сих пор не сброшено. Я уже знал вторую ссылку. На самом деле он не отвечает на мой вопрос определенным образом для Ubuntu (Ubuntu не имеет исполняемого файла httpd, и прямой вызов apache2 не работает по ранее упомянутым причинам).
—
Андреас Хартманн
Может, вместо этого coredump находится в / tmp?
—
Старейшина Гик
Я указал дамп ядра для размещения в другой папке, поэтому он не находится в / tmp.
—
Андреас Хартманн
Я не хочу использовать apport, я хочу исследовать свою проблему локально и не сообщать об ошибке, потому что это, вероятно, не ошибка apache.
—
Андреас Хартманн