Ich habe Probleme mit meinem 14.10 Ubuntu Server. Nach dem Ausführen bestimmter Aktionen wird mein Apache2 mit einem Segmentierungsfehler neu gestartet. Um dieses Problem zu beheben, möchte ich einen Core-Dump erstellen. Ich habe folgendes getan:
CoreDumpDirectory /tmp/apache-coredumps
zur Konfigurationsdatei hinzugefügt- Lauf
ulimit -c unlimited
- Lauf
apt-get install apache2-dbg php5-dbg
- neu gestartet
apache
und den Fehler verursacht. Das Protokoll behauptet, dass sich möglicherweise ein Core-Dump im Verzeichnis befindet, der jedoch leer ist.
Ich habe auch versucht, gdb direkt auf der ausführbaren Datei von apache2 zu verwenden, aber Apache wird erst gestartet, wenn es über apachectl
oder gestartet wurde service apache2 start
.
Wie kann ich einen Core-Dump zum Debuggen meines Problems erhalten oder wie kann ich gdb
direkt an Apache anhängen ?
Antworten:
ulimit -c unlimited
wirkt sich nur auf Ihre aktuelle Shell aus.Sie können dies anhand der Ausgabe bestätigen
cat /proc/$(pidof -s apache2)
.Ich habe
ulimit -c unlimited
zu/etc/default/apache2
und jetztcat /proc/$(pidof -s apache2)/limits
umfasstquelle
/etc/default/apport
und das Kernel-Core-Dump-Muster wurde an seine Bedürfnisse angepasst . Siehe serverfault.com/questions/470407/…