Làm thế nào để có được một bãi rác lõi apache?


8

Tôi đang gặp sự cố với Máy chủ Ubuntu 14.10 của mình. Khi thực hiện một số hành động, apache2 của tôi khởi động lại với lỗi lỗi phân đoạn. Để gỡ lỗi vấn đề này, tôi muốn tạo một kết xuất lõi. Tôi đã làm như sau:

  • thêm vào CoreDumpDirectory /tmp/apache-coredumpstập tin cấu hình
  • Chạy ulimit -c unlimited
  • Chạy apt-get install apache2-dbg php5-dbg
  • khởi động lại apachevà gây ra lỗi. Nhật ký tuyên bố có thể có một bãi chứa lõi trong thư mục, tuy nhiên nó trống.

Tôi cũng đã thử sử dụng gdb trực tiếp trên tệp thực thi apache2, nhưng apache sẽ không bắt đầu trừ khi bắt đầu apachectlhoặc service apache2 start.

Làm cách nào tôi có thể lấy kết xuất lõi để gỡ lỗi sự cố HOẶC làm cách nào tôi có thể đính kèm gdbtrực tiếp vào apache?


Đối với cái trước, hãy xem tại đây: serverfault.com/questions/470407/ cho phần sau, tại đây: httpd.apache.org/dev/debugging.html#gdb
Elder Geek

Thật không may, điều này đã không làm việc. Tôi đã thử thiết lập các quyền như được đề xuất trong liên kết đầu tiên, tuy nhiên vẫn không có lõi nào bị đổ. Tôi đã biết liên kết thứ hai. Nó không thực sự trả lời câu hỏi của tôi theo cách cụ thể của Ubuntu (Ubuntu không có thực thi httpd và gọi apache2 trực tiếp không hoạt động vì những lý do đã đề cập trước đó).
Andreas Hartmann

Là coredump trong / tmp thay vì có lẽ?
Elder Geek

Tôi đã chỉ định kết xuất lõi được đặt trong một thư mục khác, vì vậy nó không nằm trong / tmp.
Andreas Hartmann

Tôi không muốn sử dụng apport, tôi muốn kiểm tra vấn đề của mình tại địa phương và không báo cáo lỗi, vì có lẽ đó không phải là lỗi apache.
Andreas Hartmann

Câu trả lời:


4

ulimit -c unlimited chỉ ảnh hưởng đến vỏ hiện tại của bạn.

Bạn có thể xác nhận điều này bằng cách nhìn vào đầu ra cat /proc/$(pidof -s apache2).

Tôi đã thêm ulimit -c unlimitedvào /etc/default/apache2và bây giờ cat /proc/$(pidof -s apache2)/limitsbao gồm

Max core file size        unlimited            unlimited            bytes

Tôi đã thử điều này nhưng nó vẫn không khiến Apache (12 LTS) đổ lõi. Có suy nghĩ gì không?
Josip Rodin

Tìm thấy câu trả lời - apport đã được kích hoạt /etc/default/apportvà nó đã thay đổi mẫu kết xuất lõi nhân cho phù hợp với chính nó. Xem serverfault.com/questions/470407/ trộm
Josip Rodin

echo '/tmp/apache-coredumps/core-%e.%p'> / Proc / sys / kernel / core_potype
Rudger
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.