ในระบบ Linux รุ่นใหม่ที่ใช้ systemd เช่น Ubuntu Server, Rocky Linux หรือ Debian ระบบจะเก็บ Log ต่าง ๆ ไว้ใน systemd journal ซึ่งสามารถตรวจสอบได้ผ่านคำสั่ง journalctl โดยไม่จำเป็นต้องเปิดไฟล์ log ใน /var/log ทีละไฟล์เหมือนในอดีต
สำหรับผู้ดูแลระบบ (SysAdmin) คำสั่งนี้ถือเป็นเครื่องมือสำคัญมาก เพราะช่วยให้สามารถตรวจสอบเหตุการณ์ของระบบ บริการ (service) และข้อผิดพลาดต่าง ๆ ได้อย่างรวดเร็ว
บทความนี้จะอธิบายการใช้ journalctl แบบ Hands-on ที่สามารถนำไปใช้ตรวจสอบระบบจริงได้ทันที
1. ตรวจสอบ Log ทั้งหมดของระบบ
คำสั่งพื้นฐานที่สุดคือ

คำสั่งนี้จะแสดง Log ทั้งหมดที่ถูกบันทึกใน systemd journal โดยเรียงตามเวลา
ตัวอย่างข้อมูลที่จะแสดง เช่น
- การเริ่มต้นระบบ (Boot process)
- การทำงานของ Service
- Error ของ Kernel
- Log ของ daemon ต่าง ๆ
หาก Log มีจำนวนมาก สามารถเลื่อนดูได้ด้วยปุ่ม
b = เลื่อนขึ้น
q = ออกจากหน้าจอ
2. แสดง Log ล่าสุดแบบ Real-time
หากต้องการดู Log แบบ Real-time เหมือนคำสั่ง tail -f
ตัวเลือก -f (follow) จะทำให้ระบบแสดง Log ใหม่ทันทีที่เกิดขึ้น เหมาะสำหรับ
- ตรวจสอบ Service ที่กำลัง Debug
- ดู Log ขณะ Restart Service
- Monitor ระบบแบบ Live

3. ตรวจสอบ Log ของ Service เฉพาะตัว
ผู้ดูแลระบบมักต้องตรวจสอบ Log ของ Service เช่น nginx, ssh, หรือ docker
ตัวอย่าง
หรือ
ความหมาย
หากต้องการดูเฉพาะ Log ล่าสุด
คำอธิบาย
4. ตรวจสอบ Log ของ Boot ปัจจุบัน
บางครั้งต้องการดูเฉพาะ Log หลังจากเครื่องบูตครั้งล่าสุด
ถ้าต้องการดู Log ของ Boot ก่อนหน้า
ตัวอย่างเพิ่มเติม
ความหมาย
-1 = boot ก่อนหน้า
เหมาะสำหรับการวิเคราะห์ปัญหา เช่น
- Server reboot เอง
- Service ล้มตอน boot
5. ตรวจสอบเฉพาะ Error ของระบบ
หากต้องการดูเฉพาะ Error หรือ Warning
ระดับของ Log มีหลายระดับ เช่น
| Level | ความหมาย |
|---|---|
| emerg | ระบบล่ม |
| alert | ต้องแก้ไขทันที |
| crit | critical error |
| err | error |
| warning | warning |
| info | ข้อมูลทั่วไป |
ตัวอย่าง

6. ตรวจสอบ Log ตามช่วงเวลา
สามารถค้นหา Log ตามช่วงเวลาได้ เช่น
หรือ

ตัวอย่างเพิ่มเติม
หรือกำหนดช่วงเวลา
7. ตรวจสอบ Kernel Log
สำหรับดู Log ของ Kernel โดยเฉพาะ
– เหมาะสำหรับตรวจสอบ
- Hardware error
- Driver problem
- Kernel panic

8. แสดง Log แบบไม่ตัดบรรทัด
บางครั้ง Log ยาวเกินไป ทำให้ถูกตัด
- สามารถใช้
หรือ
เพื่อแสดงข้อมูลเต็ม
ตัวอย่างการใช้งานจริงของ SysAdmin
- ตัวอย่างการตรวจสอบ Service ที่มีปัญหา
- หากพบ Error สามารถตรวจสอบ Log เพิ่มเติม
จะเห็นรายละเอียด Error แบบทันที
สรุป
journalctl เป็นเครื่องมือสำคัญสำหรับผู้ดูแลระบบ Linux เพราะช่วยให้สามารถตรวจสอบ Log ของระบบและ Service ต่าง ๆ ได้อย่างรวดเร็วผ่าน systemd journal โดยไม่ต้องเปิดไฟล์ log ทีละไฟล์เหมือนระบบแบบเดิม
ผู้ดูแลระบบสามารถใช้คำสั่งนี้เพื่อตรวจสอบ Error วิเคราะห์ปัญหาระบบ และติดตามการทำงานของ Service ได้แบบ Real-time ซึ่งเป็นทักษะพื้นฐานที่ SysAdmin ทุกคนควรใช้งานได้คล่อง
