कैसे लिनक्स पर असामान्य प्रणाली के संचालन का कारण जानने के लिए?


0

हाल ही में मेरे एक वेब सर्वर को एक अजीब समस्या मिली है कि यह लोड एवरेज अचानक 0.01 से बढ़कर 15.00+ हो गया है और फिर मैं सर्वर को लॉग इन भी नहीं कर सकता, जिसमें ssh के माध्यम से त्रुटि संदेश "होस्ट xxx.xx.xx के लिए कोई मार्ग नहीं है।" xx "। लेकिन समस्या सिर्फ कई मिनटों तक रहती है। स्थिति प्रति दिन लगभग दो या तीन बार आती है, जो मुझे काफी परेशान करती है। इसमें इंटर्न लान हैं जो एक ही ओएस और सेवाओं के साथ तैनात अन्य सर्वर हैं, वे पूरी तरह से ठीक काम करते हैं। मुझे लगता है कि यह एक प्रणाली की समस्या है। तो मैं यह कैसे पता लगा सकता हूं कि समस्या क्यों आती है? इस तरह की समस्या के ट्रेसिंग के लिए कोई भी सिस्टम कमांड? मदद की सराहना की जाएगी।


याद रखें कि लोड औसत में I / O पर प्रतीक्षा करने में लगने वाला समय शामिल है। आपका सिस्टम रैम पर छोटा हो सकता है और बहुत स्वैप हो सकता है।
वायजार्ड

जवाबों:


1

निम्न फ़ाइलों की जाँच करें

/var/log/syslog
/var/log/httpd/error_log

यदि आप ग्राफ़िकल इंटरफ़ेस लॉगिन कर सकते हैं तो एक gui System Log Viewer भी है ।

आप उल्लेख करते हैं कि स्थिति कई मिनट तक चलेगी। यह इंगित कर सकता है कि सर्वर वास्तव में दुर्घटनाग्रस्त हो गया और स्वयं ही रिबूट हो गया। यह देखने के लिए कि वास्तव में क्या हो रहा है, कमांड का उपयोग करें

last reboot

यदि सर्वर वास्तव में रिबूट होता है, तो आपको निम्न की तरह लाइन (रेखाएं) दिखाई देंगी

reboot   system boot  3.2.0-0.bpo.3-68 Fri Nov  2 18:25 - 21:46  (03:20)

भी आज़माएं

last -x

अगला चरण 1

असामान्य अवधि के आसपास प्रक्रिया क्रैश / मार और कर्नेल संदेश के लिए जाँच / var / log / syslog । इससे कुछ और सुराग मिल सकता है।


अगला चरण २

निम्नलिखित एक अंतिम उपाय है यदि आप उस सर्वर के ठीक सामने नहीं बैठ पा रहे हैं और इसके होने की प्रतीक्षा कर रहे हैं। पूरी तरह से उपयोग करें

में / etc / crontab , निम्न पंक्ति जोड़ें

#* * * * * root /usr/bin/top -b -n 1 | /usr/bin/head -n 15 >> /var/log/top.log

हर 1 मिनट में , यह सिस्टम सारांश को शीर्ष 8 उच्चतम सीपीयू प्रक्रियाओं के साथ /var/log/top.log में जोड़ देगा ।

यह # सामने से अक्षम है। निकालें # सक्षम करेगा। यदि आप इसे रात भर के लिए चालू रखना चाहते हैं, तो आप उस स्थान को किसी स्थान पर बदलना चाहते हैं।

आईटी राइट रिव्यू, जब आप रजिस्टर करते हैं, तो इसे # बैक लगाकर या लाइन हटाकर अक्षम करें।

चेक / usr / bin / top और / usr / bin / head दोनों कमांड के लिए सही रास्ता है।


मदद के लिए धन्यवाद। मैंने आखिरी जाँच की है, लेकिन कोई रिबूट रिकॉर्ड नहीं मिला। क्या आप जानते हैं कि कैसे पता करें कि किस प्रक्रिया के कारण उच्च लोड औसत आया?
स्पॉन्स्ट

यदि आप कनेक्शन वापस आने के तुरंत बाद बहुत जल्दी लॉगिन कर सकते हैं, तो एक ps -ef करें और उस प्रक्रिया की तलाश करें जिसमें बहुत अधिक सीपीयू समय हो। उन प्रक्रियाओं को मानते हुए मरना और स्थानांतरित नहीं किया। आप सीपीयू, लोड, स्वैप, रैम, डिस्क उपयोग के बारे में अधिक जानकारी प्राप्त करने के लिए कुछ सर्वर मॉनिटरिंग सॉफ़्टवेयर स्थापित करने पर भी विचार कर सकते हैं।
जॉन सिउ

, मैंने कोशिश की है कि केवल लोड औसत को धीरे-धीरे घटते हुए देखें जबकि कोई प्रक्रिया ज्यादा संसाधन नहीं लेती है।
स्पॉन्स्ट

जोड़े गए 2 और कदम आप कोशिश कर सकते हैं।
जॉन सिउ

लॉग्स की जाँच करने पर मुझे यह त्रुटि मिली:BUG: soft lockup - CPU#0 stuck for 195s! [swapper:0]
स्पॉनस्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.