ใช่คุณต้องวิ่งlogrotateมากกว่าหนึ่งครั้งต่อวันเพื่อให้บรรลุเป้าหมายนี้ นี่คือคำตอบในวรรควินาทีของ man page logrotate(8) :
โดยปกติlogrotateจะทำงานเป็นงาน cron รายวัน มันจะไม่แก้ไขบันทึกหลาย ๆ ครั้งในหนึ่งวันเว้นแต่ว่าเกณฑ์สำหรับบันทึกนั้นจะขึ้นอยู่กับขนาดของบันทึกและlogrotateจะถูกเรียกใช้หลายครั้งในแต่ละวันหรือยกเว้นว่ามีการใช้ตัวเลือก-fหรือ--force
หากคุณต้องการทำงานlogrotateทุกชั่วโมงแทนที่จะเป็นรายวันคุณสามารถย้ายได้:
mv /etc/cron.daily/logrotate /etc/cron.hourly
ตั้งแต่ 3.8.1 maxsizeได้มีการ ความแตกต่างระหว่างsizeและmaxsizeอธิบายไว้ที่นี่:
maxsize ขนาด
ล็อกไฟล์จะหมุนเมื่อพวกเขาเติบโตมีขนาดใหญ่กว่าขนาดไบต์แม้กระทั่งก่อนที่ช่วงเวลาที่กำหนดนอกจากนี้ ( daily, weekly,
monthlyหรือyearly) sizeตัวเลือกที่เกี่ยวข้องนั้นคล้ายคลึงกันยกเว้นเป็นเอกสิทธิ์เฉพาะบุคคลกับตัวเลือกช่วงเวลาและทำให้ไฟล์บันทึกถูกหมุนโดยไม่คำนึงถึงเวลาการหมุนครั้งล่าสุด เมื่อ maxsizeใช้จะพิจารณาทั้งขนาดและเวลาของไฟล์บันทึกการทำงาน
สิ่งนี้จะทำให้ทั้งสองเหมาะสำหรับการใช้งานของคุณ: sizeโดยไม่มีช่วงเวลาใด ๆ และmaxsizeหากจำเป็นต้องใช้ช่วงเวลาด้วย อย่างไรก็ตามสิ่งนี้ไม่ได้เปลี่ยนความจริงที่ว่าโดยค่าเริ่มต้นlogrotateทำงานเฉพาะรายวัน 250Mช่วงเวลาที่เหมาะสำหรับการมากที่สุดเช่นเดียวกับในกรณีส่วนใหญ่ก็จะใช้เวลามากนานกว่าวันสำหรับการเข้าสู่ระบบที่จะเติบโตมากกว่า