पिछले सत्र से dmesg कैसे पढ़ें? (Dmesg.0)


29

dmesg सामग्री को पढ़ने के लिए एक कमांड है /var/log/dmesg। तुलना में अच्छी बात यह less /var/log/dmesgहै कि मैं मानव पठनीय समय आउटपुट के लिए -T ध्वज का उपयोग कर सकता हूं।

अब मैं देखना चाहूंगा /var/log/dmesg.0कि कैसे मेरा कंप्यूटर दुर्घटनाग्रस्त हुआ। फ़ाइल में पिछले सत्र से लॉग हैं। लेकिन मैं dmesg कमांड से -T फ्लैग का उपयोग करना चाहता हूं। या कुछ समतुल्य।

कोई विचार कैसे?

मैं एक चित्रमय उपकरण को बुरा नहीं मानूंगा, लेकिन सबसे अच्छा एक क्ली समाधान होगा।

जवाबों:


29

एक बुनियादी गलत धारणा को साफ करने के लिए, dmesgसे नहीं पढ़ा जाता है /var/log/dmesg। यह कर्नेल रिंग बफर से सीधे पढ़ता है और आपको सबसे हाल ही में एन संदेश देता है। बूट प्रक्रिया के अंत में, dmesgबूट संदेशों को लिखने के लिए आमंत्रित किया जाता है /var/log/dmesg(उस फ़ाइल के पुराने संस्करणों को सामान्य रूप से घुमाया जाता है)।

एक बार जब आप एक syslog चल रहा है ( syslogdऔर rsyslogd, syslog-ngआदि), यह कर्नेल बफर से पढ़ता है और इस तरह के रूप में एक फ़ाइल के लिए लिखता है /var/log/kern.log। (यह डेबियन के लिए है; अन्य प्रणालियाँ अलग-अलग होंगी)। मान लें कि आपका सिस्टम डिस्क को लिखने और डिस्क बफ़र्स को क्रैश करने से पहले फ्लश करने में सक्षम था, तो यह वह जगह है जहाँ आप कर्नेल के मरने की चीख पाएंगे।

मेरे डेबियन सिस्टम पर /var/log/kern.logफ़ाइल में मानव-पठनीय टाइमस्टैम्प हैं।


1
मुझे लगता है कि यह मेरे सवाल का जवाब देता है, धन्यवाद! दुर्भाग्य से मैं अभी भी यह पता नहीं लगा सका कि यह सस्पेंड क्यों होता है, लेकिन यह एक और कहानी है।
13

एक मेरी मशीन चीजों के अलावा अन्य dmesgलिखा है kern.log, विशेष रूप से निम्नलिखित डेमों विशेष रूप से निम्नलिखित डेमनgnome-keyring-d,goa-daemon,gvfsd,gvfsd-network,gvfs-gphoto2-vo,NetworkManager,upowerd
Att Righ

@ केवल उस फ़ाइल को लिखने के लिए माना जाने वाला शब्द कर्नेल है। आप एक नया सवाल पूछना पसंद कर सकते हैं
रोआम

@roima दिलचस्प ... मैं वास्तव में पूछने के लिए एक सवाल नहीं है क्योंकि मैं journalctlलॉग प्राप्त करने का उपयोग करके खुश हूं ! मुझे लगा कि दूसरों को इस असंगति में दिलचस्पी हो सकती है। अपने सिस्टम को देखते हुए मैं) यह उपयोग कर रहा है rsyslogकरने के लिए लॉग इन करने के kern.logनिम्नलिखित प्रविष्टि का उपयोग कर kern.* -/var/log/kern.log, के लिए एक कॉल debsums -eसे संबंधित है कि मेरे विन्यास फाइल में से कोई भी पुष्टि करता है rsyslogया systemdसंशोधित किया गया है ( serverfault.com/questions/90400/... ), rsyslog का अपना संस्करण है 8.24.0-1, और मैं डेबियन खिंचाव का उपयोग कर रहा हूं।
आरएच


34

हालांकि ओपी के लिए थोड़ी देर ...

मैं फेडोरा का उपयोग करता हूं, लेकिन यदि आपका सिस्टम उपयोग करता है journalctlतो आप निम्न के माध्यम से आसानी से पहले बंद / क्रैश (एक dmesg -Tप्रारूप में) से कर्नेल संदेश (dmesg लॉग) प्राप्त कर सकते हैं ।

विकल्प:

  • -k (dmesg)
  • -b < boot_number > (0, -1, -2, आदि पहले कितने रिबूट)
  • -छोटे-सटीक (dmesg -T)
  • -प्रा प्राथमिकता प्राथमिकता आउटपुट द्वारा फ़िल्टर (नोटिस और सूचना को फ़िल्टर करने के लिए 4)।

नोट: वहाँ भी है -o shortऔर -o short-isoजो आपको केवल दिनांक, और क्रमशः iso प्रारूप में दिनांक-समय देता है।

आदेश:

  • वर्तमान बूट: journalctl -o short-precise -k
  • अंतिम बूट: journalctl -o short-precise -k -b -1
  • दो जूते पहले: journalctl -o short-precise -k -b -2
  • और इसी तरह

उदाहरण आउटपुट:

Feb 18 21:41:26.917400 localhost.localdomain kernel: usb 2-4: USB disconnect, device number 12
Feb 18 21:41:26.917678 localhost.localdomain kernel: usb 2-4.1: USB disconnect, device number 13
Feb 18 21:41:27.246264 localhost.localdomain kernel: usb 2-4: new high-speed USB device number 22 using xhci_hcd
Feb 18 21:41:27.419395 localhost.localdomain kernel: usb 2-4: New USB device found, idVendor=05e3, idProduct=0610
Feb 18 21:41:27.419581 localhost.localdomain kernel: usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Feb 18 21:41:27.419739 localhost.localdomain kernel: usb 2-4: Product: USB2.0 Hub
Feb 18 21:41:27.419903 localhost.localdomain kernel: usb 2-4: Manufacturer: GenesysLogic

आपके द्वारा देखे जा सकने वाले जूतों की मात्रा निम्नलिखित के साथ देखी जा सकती है।

  • journalctl --list-boot

journalctl --list-bootनिम्नलिखित की तरह लग रहा है का उत्पादन ।

 -6 cc4333602fbd4bbabb0df2df9dd1f0d4 Sun 2016-11-13 08:32:58 JST—Thu 2016-11-17 07:53:59 JST
 -5 85dc0d63e6a14b1b9a72424439f2bab4 Fri 2016-11-18 22:46:28 JST—Sat 2016-12-24 02:38:18 JST
 -4 8abb8267e06b4c26a2466562f3422394 Sat 2016-12-24 08:10:28 JST—Sun 2017-02-12 12:31:20 JST
 -3 a040f5e79a754b2a9055ac2598d430e8 Sun 2017-02-12 12:31:36 JST—Sat 2017-02-18 21:31:04 JST
 -2 6c29e3b6f6a14f549f06749f9710e1f2 Sat 2017-02-18 21:31:15 JST—Sat 2017-02-18 22:36:08 JST
 -1 42fd465eacd345f7b595069c7a5a14d0 Sat 2017-02-18 22:51:22 JST—Sat 2017-02-18 23:08:30 JST  
  0 26ea10b064ce4559808509dc7f162f07 Sat 2017-02-18 23:09:25 JST—Sun 2017-02-19 00:57:35 JST

4
ओपी के लिए देर हो गई। भविष्य के गोगलर्स के लिए कभी देर न करें!
कियान

4

डेबियन में, dmesgलॉग को इस प्रकार संग्रहीत किया जाता है:

  • /var/log/dmesg (लाइव और असम्बद्ध)
  • /var/log/dmesg.0 (अंतिम सत्र और असम्बद्ध)
  • /var/log/dmesg.1.gz (शिष्ट और संकुचित)
  • /var/log/dmesg.2.gz (प्रतिपक्षी और संकुचित)
  • /var/log/dmesg.3.gz (अंतिम और संकुचित से 3)
  • /var/log/dmesg.4.gz (पिछले और संकुचित से 4)

आईआईएफ आपके पास परमिट है, आप उन्हें पढ़ सकते हैं cat, moreया lessसादे लोगों के लिए और zcat, zmoreया zlessसंकुचित लोगों के लिए


यह मेरे डेबियन पर परीक्षण नहीं है (परीक्षण - खिंचाव, विशेष रूप से संशोधित नहीं, आज तक अद्यतित)। यह संबंधित हो सकता है systemd, क्योंकि dmesg को systemd (नीचे उत्तर देखें) में लॉग इन किया गया है।
आरा

आपके उत्तर के लिए धन्यवाद। अब मुझे अंग्रेजी के शब्दों का संज्ञान हो गया है penultimateऔरantepenultimate
ट्रांसंग
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.