ไฟล์บันทึก Linux คืออะไรและคุณอ่านได้อย่างไร?

ไฟล์บันทึกจัดเตรียมไทม์ไลน์ของเหตุการณ์สำหรับระบบปฏิบัติการแอปพลิเคชันและบริการของ Linux ไฟล์จะถูกจัดเก็บเป็นข้อความธรรมดาเพื่อให้อ่านง่าย


คุณจะหาไฟล์บันทึกของ Linux ได้ที่ไหน?

โดยปกติไฟล์บันทึกของ Linux จะถูกเก็บไว้ในโฟลเดอร์ / var / log โฟลเดอร์นี้มีไฟล์จำนวนมากที่ให้ข้อมูลโดยละเอียดสำหรับแต่ละแอปพลิเคชัน


ฉันจะเปิดไฟล์. LOG ได้อย่างไร

เนื่องจากไฟล์บันทึกอยู่ในรูปแบบข้อความธรรมดาให้อ่านโดยใช้โปรแกรมแก้ไขข้อความใด ๆ การแจกแจงส่วนใหญ่เสนอ นาโนซึ่งมีอินเทอร์เฟซที่ใช้งานง่าย:

นาโน

หากไฟล์บันทึกมีขนาดเล็กคุณสามารถเปิดไฟล์บันทึกในโปรแกรมแก้ไขได้ แต่ถ้าไฟล์บันทึกมีขนาดใหญ่คุณอาจสนใจอ่านเฉพาะส่วนท้ายของบันทึกเท่านั้น คำสั่ง tail แสดงสองสามบรรทัดสุดท้ายในไฟล์ ระบุจำนวนบรรทัดที่จะแสดงด้วย -n สวิตช์ (ระบุจำนวนบรรทัด) ดังนี้:

หาง -nx

หากต้องการดูจุดเริ่มต้นของไฟล์ให้ใช้ไฟล์ หัว คำสั่ง

โดยปกติบันทึกขนาดใหญ่มากจะถูกบีบอัด คุณจะเห็นสิ่งเหล่านี้ใน / var / log พร้อมด้วย. GZ ต่อท้าย หากต้องการดูบันทึกให้คลายซิปไฟล์ที่เก็บถาวรโดยใช้ยูทิลิตี้ที่คุณเลือก


บันทึกระบบที่สำคัญ

ไฟล์บันทึกต่อไปนี้เป็นไฟล์หลักที่ต้องค้นหาภายใน Linux

  • การอนุญาต: ติดตามการใช้ระบบการอนุญาตที่ควบคุมการเข้าถึงของผู้ใช้
  • ภูต: ติดตามบริการที่ทำงานอยู่เบื้องหลังเพื่อดำเนินงานที่สำคัญ Daemons มักจะไม่มีเอาต์พุตแบบกราฟิกดังนั้นคุณจะต้องอ่านไฟล์บันทึกเพื่อทำความเข้าใจประสิทธิภาพของ daemon
  • การแก้ปัญหา: จัดเตรียมเอาต์พุตการดีบักสำหรับแอปพลิเคชัน
  • เมล็ด: แสดงข้อมูลเกี่ยวกับเคอร์เนลรวมถึงข้อผิดพลาด
  • ระบบ: มีข้อมูลส่วนใหญ่เกี่ยวกับระบบของคุณ หากแอปพลิเคชันของคุณไม่มีบันทึกของตัวเองรายการอาจอยู่ในไฟล์บันทึกนี้

การวิเคราะห์เนื้อหาของไฟล์บันทึก

รูปภาพด้านล่างแสดงเนื้อหาของไฟล์ 50 ไฟล์ล่าสุดภายในไฟล์บันทึกระบบ (syslog)

แต่ละบรรทัดในบันทึกประกอบด้วยข้อมูลต่อไปนี้:

  • วันที่
  • ชื่อโฮสต์
  • ใบสมัคร / บริการ
  • ข้อความ

ตัวอย่างเช่นหนึ่งบรรทัดในไฟล์ syslog มีดังนี้:

ม.ค. 20 12:28:56 gary-virtualbox systemd [1]: ตัวกำหนดตารางเวลาเริ่มต้นถ้วย

สิ่งนี้บอกให้คุณทราบว่าบริการตั้งเวลาถ้วยเริ่มตั้งแต่เวลา 12.28 น. ของวันที่ 20 มกราคม 


บันทึกการหมุน

ไฟล์บันทึกจะหมุนเป็นระยะเพื่อไม่ให้ใหญ่เกินไป

ยูทิลิตี้ล็อกการหมุนมีหน้าที่ในการหมุนล็อกไฟล์ คุณสามารถบอกได้ว่าเมื่อใดที่บันทึกถูกหมุนเพราะจะตามด้วยตัวเลขเช่น auth.log.1, auth.log 2

เป็นไปได้ที่จะเปลี่ยนความถี่ของการหมุนบันทึกโดยแก้ไขไฟล์ /etc/logrotate.conf

ต่อไปนี้แสดงตัวอย่างจากไฟล์ logrotate.conf:

# หมุนไฟล์บันทึก
รายสัปดาห์
# เก็บไฟล์บันทึกมูลค่า 4 สัปดาห์
หมุน 4
# สร้างไฟล์บันทึกใหม่หลังจากหมุน
สร้าง

ไฟล์บันทึกเหล่านี้จะหมุนเวียนทุกสัปดาห์และมีไฟล์บันทึกมูลค่าสี่สัปดาห์ที่เก็บไว้ ณ เวลาใดก็ได้ เมื่อไฟล์บันทึกหมุนไฟล์ใหม่จะถูกสร้างขึ้นแทน

แต่ละแอปพลิเคชันสามารถมีนโยบายการหมุนเวียนของตนเองได้ นโยบายการหมุนเวียนจะถูกเก็บไว้ใน /etc/logrotate.d แต่ละแอปพลิเคชันที่ต้องการนโยบายการหมุนเวียนของตัวเองจะมีไฟล์กำหนดค่าในโฟลเดอร์นี้

ตัวอย่างเช่นเครื่องมือ apt มีไฟล์ในโฟลเดอร์ logrotate.d ดังนี้:

/var/log/apt/history.log {
หมุน 12
รายเดือน
อัด
missingok
notifempty
}

โดยทั่วไปบันทึกนี้จะบอกคุณสิ่งต่อไปนี้: บันทึกจะเก็บไฟล์บันทึกไว้เป็นเวลา 12 สัปดาห์และหมุนเวียนทุกเดือน (หนึ่งครั้งต่อเดือน) ไฟล์บันทึกจะถูกบีบอัด หากไม่มีการเขียนข้อความลงในบันทึก (กล่าวคือว่างเปล่า) แสดงว่ายอมรับได้ บันทึกจะไม่หมุนหากว่างเปล่า

ในการแก้ไขนโยบายของไฟล์ให้แก้ไขไฟล์ด้วยการตั้งค่าที่คุณต้องการจากนั้นเรียกใช้คำสั่งต่อไปนี้:

logrotate -f