ความแตกต่างระหว่างเอาต์พุตของ dmesg และเนื้อหาของ / var / log / dmesg?


10

ฉันพบว่าผลลัพธ์dmesgและเนื้อหาของ/var/log/dmesgแตกต่างกัน ถ้าอย่างนั้นความแตกต่างระหว่างวัตถุประสงค์ของพวกเขาคืออะไร?

คำตอบ:


13

dmesgคำสั่งแสดงเนื้อหาปัจจุบันของเคอร์เนล syslog ข้อความ buffer แหวนในขณะที่/var/log/dmesgไฟล์มีสิ่งที่อยู่ในบัฟเฟอร์แหวนว่าเมื่อขั้นตอนการบู๊ตเสร็จล่าสุด


หากอแด็ปเตอร์ไร้สายของฉันหยุดทำงานหลังจากผ่านไประยะหนึ่งหลังจากเริ่มต้นฉันจะต้องดูอันใด
ทิม

@Tim: ดูdmesgเหตุการณ์ล่าสุดเป็นครั้งแรก หากคุณไม่สามารถหาได้มี /var/log/dmesgแต่คุณยังคงสงสัยว่าควรจะมีข้อมูลที่เกี่ยวข้องจากนั้นไปดูใน
dotancohen

1
@ ข้อความ Tim syslog ถูกเก็บไว้ใน / var / log / syslog จากนั้นหมุนใน /var/log/syslog.1, /var/log/syslog.2.gz เป็นต้น
jlliagre

ดังนั้น @jlliagre - / var / log / dmesg เนื้อหาจะได้รับการแก้ไข (บนเช่นเซิร์ฟเวอร์ที่มีสถานะการออนไลน์มากกว่า 30 วัน) และไม่มีวิธีที่บรรทัดจะเปลี่ยนไปจนกว่าจะมีการบูตใหม่หรือไม่ และ dmesg จะมีเนื้อหาปัจจุบันของ kernel syslog ring buffer ดังนั้นข้อความที่อยู่ในนั้นจะถูกแทนที่ด้วยอันใหม่? และข้อความเก่าจาก dmesg จะไปไหน
Muhamed Huseinbašić

1
@ MuhamedHuseinbašić / var / log / dmesg ยังคงไม่เปลี่ยนแปลงจนกว่าจะรีบูทครั้งต่อไป (แม้ว่า distro จะสามารถทำอะไรก็ได้ตามที่ต้องการ) Mesgs เก่าจะถูกแทนที่ด้วยข้อความใหม่ในบัฟเฟอร์บัฟเฟอร์นั่นเป็นความคิดของแหวน ข้อความเก่าอาจถูกเขียนไว้ที่ไหนสักแห่งทั้งนี้ขึ้นอยู่กับการกำหนดค่า syslog คนอื่น ๆ จะหายไป
jlliagre
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.