ฉันยังใหม่กับการดูแลระบบและมีคำถามสองสามข้อ:
- โพรซีเดอร์ logrotate อยู่ที่ไหนและอย่างไร
- logfiles ที่หมุน "แบบรายวัน" ของฉันถูกหมุนเวลาเท่าไร
- คำสั่ง prerotate รันสำหรับแต่ละไฟล์บันทึกที่ตรงกับรายการ * .log หรือไม่
ขอขอบคุณ
ฉันยังใหม่กับการดูแลระบบและมีคำถามสองสามข้อ:
ขอขอบคุณ
คำตอบ:
1) logrotate ของฉันในการติดตั้ง Hardy รุ่นเก่านั้นเหมือนกับคำตอบของ Mike
2) ดูไฟล์ / etc / crontab, cron.daily ทำงานที่ 6:25 น. ในการติดตั้งของฉัน
3) หากคำสั่งหมุนล่วงหน้าถูกกำหนดให้กับรูปแบบ aa และไฟล์บันทึกตรงกับรูปแบบนั้นแล้วใช่
จากhttps://help.ubuntu.com/community/LinuxLogFiles :
โดยทั่วไปแล้ว logrotate จะถูกเรียกจากสคริปต์ cron สคริปต์ /etc/cron.daily/logrotate ทั่วทั้งระบบและกำหนดเพิ่มเติมโดยไฟล์การกำหนดค่า /etc/logrotate.conf ไฟล์การกำหนดค่าส่วนบุคคลสามารถเพิ่มลงใน /etc/logrotate.d (โดยที่การกำหนดค่า apache2 และ mysql ถูกเก็บไว้)
ไฟล์ที่เกี่ยวข้องคือ:
/etc/cron.daily/logrotate
/etc/logrotate.conf
/ec/logrotate.d/*
เช่นเดียวกับ Matt งาน cron.daily เริ่มต้นที่ 6:25 น. ในระบบของฉัน แต่เวลาดำเนินการจริงจะแตกต่างกันไปขึ้นอยู่กับงานใน cron.daily, โหลดระบบ ฯลฯ
/etc/cron.daily/logrotateรัน logrotate โดยใช้ไฟล์ logrotate.conf:
"/ usr / sbin / logrotate /etc/logrotate.conf"
/etc/logrotate.confชี้ไปที่ไดเร็กทอรี /etc/logrotate.d:
"include /etc/logrotate.d"
/etc/logrotate.dมีสคริปต์แต่ละตัวสำหรับไฟล์บันทึกที่เฉพาะเจาะจง
สำหรับไฟล์เหล่านี้การดำเนินการในวงเล็บปีกกา (หมุน, บีบอัด ฯลฯ ) จะดำเนินการกับไฟล์ที่กำหนดไว้ที่จุดเริ่มต้นของแต่ละบล็อก อนุญาตให้ใช้ไวลด์การ์ดดังนั้นบางอย่างเช่น '/ var / log / * log' ควรมีผลกับไฟล์ทั้งหมดใน / var / log / ที่ลงท้ายด้วย. log ต่อท้าย
หาก prerotate เป็นหนึ่งในคำหลักที่ใช้ในบล็อกที่เป็นของ '/ var / log / * log' จากนั้นไฟล์เหล่านั้นจะมีคำสั่ง prerotate รันอยู่ แต่จะ "หมุนเฉพาะเมื่อบันทึกนั้นจะถูกหมุน" ( จาก คน logrotate )
ดูต่อไปนี้
/etc/cron
ls /etc/cron.daily
ใน RedHat คือ
/etc/cron.daily/logrotate