วิธีตรวจสอบ systemd system.journal จากระบบอื่น


23

ฉันมี arch linux ที่ล้มเหลวบนอุปกรณ์ อุปกรณ์ไม่มีหน้าจอใด ๆ แต่ไม่ตอบสนองต่อเครือข่าย ดังนั้นฉันจึงนำการ์ด SD ใส่ลงในเดสก์ท็อป Ubuntu ดู system.journal ที่นั่นและ ... จะดูว่ามีอะไรอยู่ข้างในได้บ้าง

จากเอกสาร Arch Linux ฉันรู้ว่าฉันสามารถทำได้:

 strings /mnt/arch/var/log/journal/.../system.journal | grep -i message

แต่มันเป็นพื้นฐานจริงๆ คำถามคือ:

มีวิธีที่สะดวกกว่าในการตรวจสอบ system.journal จากระบบอื่นมากกว่าการใช้สตริงหรือไม่? ยกตัวอย่างเช่นฉันสามารถระบุไฟล์ที่จะอ่านสำหรับjournalctl ได้หรือไม่?


สิ่งที่เกี่ยวกับ journalctl --file = file_to_examine?
taliezin

คำตอบ:


24

ประการแรกความสามารถในการใช้stringsลำต้นจากความบังเอิญเพียงอย่างเดียวในเจอร์นัลนั้นไม่ได้บีบอัดฟิลด์ขนาดเล็ก (ต่ำกว่า 64KiB ในการใช้งานปัจจุบัน) นี่ไม่ใช่วิธีที่ได้รับการสนับสนุนในการอ่านวารสารและใน archwiki มันควรถูกทำเครื่องหมายเช่นนี้ มันเป็นวิธีการกู้คืนครั้งสุดท้าย

ตอนนี้คำถาม จากjournalctl (1) :

-D DIR, - ไดเรกทอรี = DIR

ใช้เส้นทางไดเรกทอรีเป็นอาร์กิวเมนต์ หากระบุไว้ journalctl จะทำงานบนสมุดรายวันไดเรกทอรีที่ระบุ DIR แทนการเริ่มต้นรันไทม์และเส้นทางวารสารระบบ

ดังนั้นสมมติว่ารูทของระบบที่ใช้งานไม่ได้ติดตั้งอยู่ใต้$DESTใช้journalctl -D $DEST/var/log/journalเพื่อดูบันทึกระบบ

เพื่อความครบถ้วนสมบูรณ์: เพื่อดูไฟล์เฉพาะการใช้งานเช่นjournalctl --file journalctl --file /var/log/journal/$(cat /etc/machine-id)/system.journalอย่างไรก็ตามเนื่องจากไฟล์เจอร์นัลถูกหมุนเป็นระยะทำให้แบบฟอร์มนี้ไม่สามารถใช้งานได้จริงสำหรับการดูวารสารที่สมบูรณ์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.