Linux कमांड लाइन में दक्षता · पाठ

उन्नत लॉगिंग और समस्या-निवारण तकनीकें

सिस्टम लॉग का अध्ययन करें, `journalctl` का उपयोग करें और जटिल समस्याओं के समाधान के लिए व्यवस्थित तरीकों को अपनाएँ।

पाठ 3, कुल 4 में से11 चरण

उन्नत लॉगिंग और समस्या-निवारण तकनीकें, CoddyKit पर Linux कमांड लाइन में दक्षता का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Linux कमांड लाइन में दक्षता सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Linux कमांड लाइन में दक्षता पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

लॉग महत्वपूर्ण क्यों हैं

जब Linux सिस्टम में कुछ गलत होता है, तो लॉग आपके सबसे अच्छे सहायक होते हैं! वे एक डिजिटल डायरी की तरह होते हैं, जिसमें घटनाएँ और गतिविधियाँ दर्ज होती हैं।

सिस्टम लॉग आपको यह समझने में सहायता करते हैं कि क्या हुआ, कब हुआ और अक्सर यह भी कि क्यों हुआ। समस्याएँ ठीक करने और सिस्टम का स्वास्थ्य बनाए रखने के लिए यह जानकारी अत्यंत महत्वपूर्ण है।

`/var/log` डायरेक्टरी

परंपरागत रूप से, अधिकांश सिस्टम लॉग /var/log डायरेक्टरी में संग्रहीत किए जाते हैं। यहाँ आपको कई फ़ाइलें मिलेंगी, जिनमें से प्रत्येक आम तौर पर किसी विशेष सेवा या घटना के प्रकार के लिए समर्पित होती है।

  • auth.log: प्रमाणीकरण प्रयास दर्ज करती है।
  • syslog: सामान्य सिस्टम गतिविधि के संदेश।
  • kern.log: Linux कर्नेल के संदेश।

यह जानकारी का खज़ाना है, लेकिन इसमें ढूँढना जटिल हो सकता है।

पारंपरिक लॉग देखना

पुरानी लॉग फ़ाइलों या systemd द्वारा प्रबंधित न की जाने वाली फ़ाइलों की सामग्री देखने के लिए आप cat, less या tail जैसे सामान्य कमांड का उपयोग कर सकते हैं।

नई प्रविष्टियाँ जुड़ते समय लॉग को वास्तविक समय में देखने के लिए tail -f विशेष रूप से उपयोगी है।

अपने सिस्टम पर उपलब्ध होने पर syslog फ़ाइल का अंतिम भाग देखने का प्रयास करें:

tail /var/log/syslog

`journalctl` से आधुनिक लॉगिंग

आधुनिक Linux सिस्टम अक्सर systemd का उपयोग करते हैं, जिसमें Journal नामक अपनी लॉगिंग प्रणाली शामिल होती है। इस जर्नल से इंटरैक्ट करने का कमांड-लाइन उपकरण journalctl है।

journalctl कर्नेल, सेवाओं और अनुप्रयोगों के लॉग तक पहुँचने का केंद्रीकृत तरीका देता है, जिससे कई फ़ाइलों में खोजने की तुलना में समस्या का निवारण अधिक प्रभावी हो जाता है।

आपका पहला `journalctl` कमांड

बिना किसी आर्ग्युमेंट के journalctl चलाने पर systemd जर्नल द्वारा एकत्र किए गए सभी लॉग संदेश सबसे पुरानी उपलब्ध प्रविष्टि से शुरू होकर दिखाए जाते हैं।

यह बहुत सारी जानकारी होती है! आप ऐरो कुंजियों, Page Up/Down या बाहर निकलने के लिए 'q' से स्क्रॉल कर सकते हैं। यह आपका संपूर्ण सिस्टम लॉग है:

journalctl

लॉग प्रविष्टियों को सीमित करना

journalctl की वास्तविक शक्ति इसकी फ़िल्टर करने की क्षमता में है। आप ठीक-ठीक निर्दिष्ट कर सकते हैं कि क्या देखना है:

  • -u <unit>: किसी विशेष systemd यूनिट के लॉग दिखाएँ (जैसे nginx या sshd जैसी सेवा)।
  • -b: वर्तमान बूट से लॉग दिखाएँ।
  • --since "YYYY-MM-DD HH:MM:SS": किसी विशेष समय या तारीख के आधार पर फ़िल्टर करें।

यदि `ssh` सेवा (sshd यूनिट) चल रही है, तो उसके लॉग विशेष रूप से जाँचें:

journalctl -u sshd

लॉग को वास्तविक समय में देखना

tail -f की तरह journalctl भी नई लॉग प्रविष्टियाँ आते ही दिखा सकता है। वास्तविक समय में किसी समस्या का निदान करते समय, जैसे कोई सेवा शुरू करते समय, यह बहुत उपयोगी होता है।

नए संदेशों के लिए जर्नल की लगातार निगरानी करने हेतु -f (फ़ॉलो) विकल्प का उपयोग करें:

journalctl -f

समस्या समाधान की योजना

प्रभावी समस्या निवारण केवल लॉग देखने तक सीमित नहीं है; इसके लिए एक व्यवस्थित तरीका अपनाना आवश्यक है। एक सामान्य कार्यप्रणाली यह है:

  • निरीक्षण करें: लक्षण क्या हैं? क्या विफल हो रहा है या असामान्य व्यवहार कर रहा है?
  • परिभाषित करें: समस्या को स्पष्ट रूप से बताएँ। अपेक्षा के अनुसार वास्तव में क्या काम नहीं कर रहा है?
  • अलग करें: निर्धारित करें कि समस्या कहाँ हो सकती है (जैसे नेटवर्क, कोई विशेष सेवा, कॉन्फ़िगरेशन या हार्डवेयर)।
  • परीक्षण करें: अपने निष्कर्षों के आधार पर समाधान सुझाएँ और उसका परीक्षण करें।
  • दस्तावेज़ बनाएँ: आपने क्या किया, क्या काम किया और क्या काम नहीं किया, इसे दर्ज करें।

कहाँ से जाँच शुरू करें

समस्या आने पर इन बुनियादी जाँचों से शुरुआत करें:

  • हाल के बदलाव: क्या हाल में कुछ बदला है? नया सॉफ़्टवेयर इंस्टॉल हुआ, कॉन्फ़िगरेशन में बदलाव हुआ या सिस्टम अपडेट हुआ?
  • सेवा की स्थिति: क्या संबंधित सेवा चल रही है? (systemctl status <service> का उपयोग करें)।
  • संसाधन उपयोग: क्या डिस्क स्थान, मेमोरी या CPU समाप्त हो गया है? (df -h, free -h, top)।
  • संबंधित लॉग: पिछली बार बूट होने के बाद से प्रभावित सेवा के लॉग जाँचने के लिए journalctl -u <service> -b का उपयोग करें।

`journalctl` फ़िल्टरिंग चुनौती

आपको कल से अब तक हुई nginx वेब सर्वर से संबंधित लॉग प्रविष्टियाँ ढूँढनी हैं। कौन-सा journalctl कमांड सबसे उपयुक्त होगा?

लॉग और समस्या निवारण का पुनरावलोकन

बहुत अच्छा! आपने सीखा कि Linux पर समस्याओं का निदान करने के लिए सिस्टम लॉग कितने महत्वपूर्ण हैं।

हमने पारंपरिक /var/log डायरेक्टरी का अध्ययन किया और, इससे भी महत्वपूर्ण रूप से, आधुनिक systemd लॉग देखने, फ़िल्टर करने और उनका लगातार अनुसरण करने के लिए journalctl में दक्षता हासिल की।

याद रखें कि जटिल सिस्टम समस्याओं को प्रभावी ढंग से पहचानने और हल करने के लिए इन शक्तिशाली उपकरणों को व्यवस्थित समस्या निवारण पद्धति के साथ उपयोग करें!

शुरुआत निःशुल्क

एआई शिक्षक के साथ Linux कमांड लाइन में दक्षता सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “उन्नत लॉगिंग और समस्या-निवारण तकनीकें” पाठ निःशुल्क है?

हाँ—“उन्नत लॉगिंग और समस्या-निवारण तकनीकें” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Linux कमांड लाइन में दक्षता पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Linux कमांड लाइन में दक्षता पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“उन्नत लॉगिंग और समस्या-निवारण तकनीकें” में मैं क्या सीखूँगा?

सिस्टम लॉग का अध्ययन करें, `journalctl` का उपयोग करें और जटिल समस्याओं के समाधान के लिए व्यवस्थित तरीकों को अपनाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Linux कमांड लाइन में दक्षता का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Linux कमांड लाइन में दक्षता शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Linux कमांड लाइन में दक्षता शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“उन्नत लॉगिंग और समस्या-निवारण तकनीकें” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Linux कमांड लाइन में दक्षता पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Linux कमांड लाइन में दक्षता पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. डिस्क I/O निगरानी: `iostat`, `iotop`
  2. मेमोरी और CPU प्रदर्शन उपकरण
  3. उन्नत लॉगिंग और समस्या-निवारण तकनीकें
  4. strace और ltrace से सिस्टम कॉल की ट्रेसिंग
← Linux कमांड लाइन में दक्षता पर वापस जाएँ