हमारे पास एक उबंटू सर्वर है जो दिखाए गए एपपोर्ट सक्षम के साथ तैनात है।गैर-पैक किए गए एप्लिकेशन क्रैश के लिए apport डिफ़ॉल्ट व्यवहार को कैसे बदला जाए?
~$ cat /proc/sys/kernel/core_pattern
|/usr/share/apport/apport %p %s %c
दुर्भाग्य से गैर-पैक किए गए एप्लिकेशन क्रैश से निपटने में अपपोर्ट का व्यवहार पूरी तरह से हमारी पसंद के लिए नहीं है। apport इन परिदृश्यों में कार्यशील निर्देशिका में "कोर" फ़ाइलों का उत्पादन कर रहा है (माना जाता है कि ulimit -c उचित रूप से सेट है)। उदाहरण के लिए, apport लॉग,
ERROR: apport (pid 10117) Tue Jan 8 08:56:25 2013: executable: /home/jess/a.out (command line "./a.out")
ERROR: apport (pid 10117) Tue Jan 8 08:56:25 2013: executable does not belong to a package, ignoring
ERROR: apport (pid 10117) Tue Jan 8 08:56:25 2013: writing core dump to /home/jess/core (limit: 18889465931478580853760)
Frustratingly से, एक बार एक कोर फ़ाइल वहाँ यह ओवरराइट नहीं किया जाएगा। तो उदाहरण के लिए यदि हम एक ऐप का परीक्षण कर रहे हैं और कार्यशील निर्देशिका से पुरानी कोर फ़ाइल को साफ़ करना भूल गए हैं, तो ऐप परीक्षण के दौरान क्रैश हो जाता है, हम एक नई कोर फ़ाइल नहीं देखेंगे। यहां तक कि अगर इसे ओवरराइट किया गया हो, तो यह आदर्श नहीं हो सकता है क्योंकि हम पुराने कोर को खो देते हैं।
आदर्श रूप से हम जो चाहते हैं वह अपवाद कहने की क्षमता है, उदाहरण के लिए तर्क के माध्यम से, कि गैर-पैक किए गए एप्लिकेशन केस के लिए, एक निर्दिष्ट फ़ाइल के अनुसार प्रारूपित फ़ाइल नाम के साथ कोर फ़ाइल उत्पन्न करें (core_pattern के अनुसार फ़ाइल विनिर्देश) ... क्या ऐसा करने का कोई तरीका है, या समकक्ष कुछ है?
[कोर डंप फ़ाइल जेनरेट नहीं की गई] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/7732983/core-dump-file-is-not- जनरेटेड) – conradkdotcom