Dmesg आउटपुट और / var / लॉग / मैसेज में क्या अंतर है?


55

AFAIK dmesgकर्नेल और कर्नेल मॉड्यूल के बारे में जानकारी दिखाता है, और /var/log/messagesकर्नेल और मॉड्यूल द्वारा निर्मित जानकारी भी दिखाता है।

तो क्या अंतर है? क्या /var/log/messages के उत्पादन में dmesg?

अधिक जानकारी जो सहायक हो सकती है:
- कर्नेल रिंग बफर है , जो मुझे लगता है कि कर्नेल लॉग डेटा संग्रहीत करने के लिए बहुत ही और एकमात्र जगह है।
- आईबीएम डेवलपरवर्क्स पर अनुच्छेद " कर्नेल लॉगिंग: एपीआई और कार्यान्वयन " वर्णित एपीआई और पक्षी-दृश्य चित्र।

जवाबों:


51

dmesgरिंग बफर की सामग्री को प्रिंट करता है। यह जानकारी करने के लिए वास्तविक समय में भेज दिया जाता है syslogdया klogd, जब वे चल रहे हैं, और में समाप्त होता है /var/log/messages; जब dmesgसबसे उपयोगी होता है बूट-टाइम संदेशों को पहले syslogdऔर / या klogdशुरू करने से कैप्चर करने में , ताकि वे ठीक से लॉग इन हो सकें।


4
तो /var/log/messagesऔर dmesg(और अलग-अलग प्रारूप में) एक ही लॉग दिखाएगा syslogdऔर / या klogdशुरू करेगा?
xanpeng

10
klogdचलने के बाद , dmesgकेवल सबसे हाल के कर्नेल संदेश दिखाएंगे (क्योंकि रिंग बफर एक निश्चित आकार है और इसलिए केवल इतना पकड़ सकता है), बिना टाइमस्टैम्प या अन्य जानकारी के, जबकि /var/log/messagesलॉग को कैसे logrotateकॉन्फ़िगर किया गया है और टाइमस्टैम्पिंग के अनुसार लॉग को बनाए रखेगा (जो प्रारंभिक बूट संदेशों के लिए थोड़ा गलत होगा क्योंकि dmesgउनके पास नहीं है, इसलिए klogdशुरू किए गए समय का उपयोग सभी संदेशों के लिए उपयोग किया जाता है जो कि केबी बफर से पढ़ा जाता है)।
geekosaur

6
@xanpeng में dmesgकेवल कर्नेल के संदेश शामिल हैं, /var/log/messagesआमतौर पर अनुप्रयोगों से भी लॉग होते हैं।
गिल्स एसओ-

14

यह ऑपरेटिंग सिस्टम पर निर्भर करता है। Solaris पर उदाहरण के लिए, dmesg बस एक शेल स्क्रिप्ट है जो /var/adm/messages.*फाइलों की अंतिम 200 लाइनों को दिखाती है ।


1
क्या यह भी रंगीन है?
हाय-एंजेल

@ हाय-एंजेल लॉग फाइल का कोई पोस्ट-प्रोसेसिंग नहीं तो कोई रंग नहीं cat ... | tail -200
जलीगेरे

6
  • हम कह सकते हैं कि dmesgसबसेट है /var/log/messagesऔर रिंग बफर में बनाए रखा है।
  • /var/log/messagesइसमें सिस्टम की शुरुआत से लेकर संदेशों के साथ-साथ सिस्टम के सभी संदेश शामिल हैं dmesg। संक्षेप में लॉग से dmesgअंदर फेंक दिया जाता है /var/log/messages
  • /var/log/messagesसामान्य सिस्टम गतिविधि लॉग को dmesgबनाए रखना और केवल कर्नेल लॉग बनाए रखता है।

2

dmesg : dmesg एक (डिस्प्ले या ड्राइवर) संदेश है। इसका उपयोग कर्नेल रिंग बफर की जांच या नियंत्रण के लिए किया जाता है।

संदेश : इसमें सिस्टम स्टार्टअप के दौरान लॉग किए गए संदेशों सहित वैश्विक सिस्टम संदेश शामिल हैं। /var/log/messagesमेल, क्रोन, डेमॉन, केर्न, ऑर्टिकल आदि कई चीजें हैं जो लॉग इन हैं ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.