จาก man page ของ logrotate:
MinSize ขนาด
ไฟล์เข้าสู่ระบบจะหมุนเมื่อพวกเขาเติบโตมีขนาดใหญ่กว่าขนาดไบต์ แต่ไม่ก่อนที่ช่วงเวลาที่กำหนดนอกจากนี้ (รายวันรายสัปดาห์รายเดือนหรือรายปี) ตัวเลือกขนาดที่เกี่ยวข้องนั้นคล้ายกันยกเว้นเป็นเอกสิทธิ์เฉพาะบุคคลกับตัวเลือกช่วงเวลาและทำให้ไฟล์บันทึกถูกหมุนโดยไม่คำนึงถึงเวลาการหมุนครั้งล่าสุด เมื่อใช้ minsize ทั้งขนาดและการประทับเวลาของไฟล์บันทึกจะถูกพิจารณาขนาด ขนาด
ไฟล์เข้าสู่ระบบจะหมุนเมื่อพวกเขาเติบโตมีขนาดใหญ่กว่าขนาดไบต์ หากขนาดตามด้วย k ขนาดจะถือว่าเป็นกิโลไบต์ หากใช้ M ขนาดจะเป็นเมกะไบต์และหากใช้ G จะมีขนาดเป็นกิกะไบต์ ดังนั้นขนาด 100, ขนาด 100k, ขนาด 100M และขนาด 100Gare ใช้ได้ทั้งหมด
ผมตั้งขนาดเป็น5Mและช่วงเวลาที่เป็นรายสัปดาห์ความคิดที่บันทึกจะได้รับการหมุนเป็นประจำทุกสัปดาห์และการหมุนเพิ่มเติมจะเกิดขึ้นถ้าขนาดของบันทึกเกิน 5M แต่สิ่งที่เกิดขึ้นคือบันทึกไม่ได้หมุนจนกว่าจะเกิน 5M ซึ่งน่าจะเป็นสิ่งที่ขนาดเล็กควรทำ
ฉันตีความคู่มือผิดหรือเปล่า? ฉันจะรับการบันทึกเพื่อหมุนเป็นรายสัปดาห์และถ้าเกิน 5M ได้อย่างไร
แก้ไข:
ฉันไม่แน่ใจว่าข้อมูลต่อไปนี้เกี่ยวข้องหรือไม่ แต่เพื่อเสริม:
ฉันใช้ rsyslog เพื่อทำการบันทึกหลักสำหรับข้อความ, ปลอดภัย, cron, maillog, boot ต่อไปนี้เป็นวันที่การหมุนและขนาดไฟล์ของบันทึกการทำงานสุดท้ายที่ขนาดและช่วงเวลาถูกตั้งค่าตามที่อธิบายไว้ข้างต้น
filename rotation date file size
messages 20130129 5.3MB
secure 20130113 5.1kB
cron 20130113 3.6kB
maillog 20130113 1.1kB
ดังที่เห็นได้เฉพาะข้อความที่หมุน
EDIT2:
man logrotate
ฉันควรจะมีการตรวจสอบด้วย พวกเขาจริงอัพเกรดกับmaxsizeตัวเลือก นี่ควรเป็นสิ่งที่ฉันกำลังมองหา:
maxsize ขนาด
ไฟล์เข้าสู่ระบบจะหมุนเมื่อพวกเขาเติบโตมีขนาดใหญ่กว่าขนาดไบต์แม้กระทั่งก่อนที่ช่วงเวลาที่กำหนดนอกจากนี้ (รายวันรายสัปดาห์รายเดือนหรือรายปี) ตัวเลือกขนาดที่เกี่ยวข้องนั้นคล้ายกันยกเว้นเป็นเอกสิทธิ์เฉพาะบุคคลกับตัวเลือกช่วงเวลาและทำให้ไฟล์บันทึกถูกหมุนโดยไม่คำนึงถึงเวลาการหมุนครั้งล่าสุด เมื่อใช้ขนาดสูงสุดทั้งขนาดและการประทับเวลาของไฟล์บันทึกจะถูกพิจารณา