ฉันต้องการหาสถานที่ที่ Linux เขียนข้อความบูตทั้งหมด คุณรู้:
facility one [STARTED]
facility two [STARTED]
facility three [FAILED]
ฉันค้นหาด้วย
find . -print0 | xargs -0 grep -i "words from boot messages"
ใน / var / log / แต่ไม่พบอะไรเลย
ฉันมี CentOS 5.5
ตัวอย่างเช่นตอนบูตเครื่องฉันมี: "การกำหนดข้อมูล IP สำหรับ eth0 ... ล้มเหลวไม่มีลิงก์ตรวจสอบสายเคเบิล"
ฉันไม่สนใจข้อผิดพลาดที่เฉพาะเจาะจง แต่ฉันไม่พบบันทึกที่มีข้อผิดพลาดนี้
dmesg | grep "no link present"
ไม่ส่งคืนอะไรด้วย
find
คำสั่งด้วยสิทธิ์ root หรือไม่find
จะพิมพ์ไฟล์ทั้งหมดที่คุณสามารถแสดงได้ แต่grep
สามารถตรวจสอบได้เฉพาะไฟล์ที่คุณสามารถอ่าน & ไฟล์บันทึกบางไฟล์อาจเป็นของรูทด้วยสิทธิ์การอ่านสำหรับผู้ใช้รายอื่น นอกจากนี้อย่างน้อย GNU grep ก็รองรับ-l
ตัวเลือกth เพื่อพิมพ์ชื่อของไฟล์ที่มีการจับคู่แทนการจับคู่บรรทัด นี่อาจเป็นประโยชน์มากสำหรับการค้นหาไฟล์ที่มีข้อความบางอย่าง ดังนั้นลองsu -c 'find /var/log -print0 | xargs -0 grep -l -i "words from boot messages"'
หรือsudo find /varlog -print0 | xargs -0 sudo grep -l -i "words from boot messages"