Score:1

การหมุนไม่ทำงานเมื่อขนาดไฟล์ถึงเกณฑ์ที่กำหนด

ธง us

ฉันมีการกำหนดค่าต่อไปนี้ใน /etc/logrotate.d/rsyslog:

/var/log/syslog
{
        หมุน 7
        ขนาด 1G
        หายไป
        การแจ้งเตือน
        การบีบอัดล่าช้า
        บีบอัด
        หลังการหมุน
          เรียกใช้ rc.d rsyslog หมุน >/dev/null
        ลงท้าย
}

จากที่ฉันเข้าใจฉันได้ตั้งค่าไว้ดังนั้นถ้า /var/log/syslog ถึง 1G ขนาดมันจะหมุนเอง นอกจากนี้ ระบบจะถือ 7 การหมุน

ในการทดสอบ ฉันทำสิ่งนี้:

แมว /dev/null > /var/log/syslog
base64 /dev/urandom | หัว -c 999999999 > /var/log/syslog
คนตัดไม้ -s "สวัสดี"

จากนั้นฉันก็ทำสิ่งนี้:

ls -las /var/log/syslog*
976568 -rw-r----- 1 syslog adm 1000000072 28 ก.ค. 19:11 /var/log/syslog

มันแสดงขนาดไฟล์เป็น 1.000000728 กิกะไบต์ มันควรจะหมุนตัวเองไม่ใช่เหรอ?

เมื่อใช้การกำหนดค่า ฉันทำ systemctl รีสตาร์ท rsyslog

Score:1
ธง cz

Logrotate ใช้หน่วยแบบดั้งเดิมแทนหน่วย SI สำหรับ K, M, G เป็นต้น ซึ่งหมายถึงการอ้างอิงจากซอร์สโค้ดอย่างแท้จริง: 1024 * 1024 * 1024หรือ 1073741824 ไบต์

justanotheruser1019 avatar
us flag
ดังนั้นฉันต้องประกาศว่าเป็น `ขนาด 1073741824` ถูกต้องไหม
Michael Hampton avatar
cz flag
@jk22721019 สำเร็จแล้ว! สิ่งที่คุณต้องทำคือเขียนข้อมูลเพิ่มเติมลงในไฟล์บันทึก
justanotheruser1019 avatar
us flag
อ้อเข้าใจแล้ว. ฮ่าฮ่าฮ่าฮ่า
justanotheruser1019 avatar
us flag
ฉันทำ `logger -s "hello"` และตอนนี้ขนาดบอกว่า `1073741883` สำหรับ `ls -las /var/log/syslog` และไม่มีบันทึกการหมุน...
justanotheruser1019 avatar
us flag
ฉันเห็นสิ่งนี้... 28 ก.ค. 19:37:43 น. rsyslogd: ชื่อลำดับความสำคัญที่ไม่รู้จัก "" [v8.1901.0] 28 ก.ค. 19:37:43 น. rsyslogd: imfile: ไม่มีไฟล์ที่กำหนดค่าให้ตรวจสอบ - จะไม่มีการป้อนข้อมูล [v8.1901.0 ลอง https://www.rsyslog.com/e/2212 ]
Michael Hampton avatar
cz flag
@ jk22721019 คุณรู้ไหมว่า logrotate ทำงานทุกคืนเท่านั้นใช่ไหม
justanotheruser1019 avatar
us flag
โอ้. เข้าใจแล้ว. ดังนั้นฉันอาจต้องปรับงาน cron ให้ทำงานทุก ๆ สองสามนาที ดังนั้นมันจึงสามารถรับ syslog ที่มากกว่าขนาดที่ถูกต้องและเรียกใช้ logrotate แทนที่จะรอจนถึงกลางคืน
justanotheruser1019 avatar
us flag
ฉันคิดว่าการลบ `รายชั่วโมง' หรือ 'รายวัน' มันจะตอบสนองทันที ชัดเจนว่าไม่.
Michael Hampton avatar
cz flag
@ jk22721019 คุณสามารถทำได้อย่างแน่นอน แต่หากคุณสร้างบันทึกจำนวนมหาศาลในความเป็นจริง คุณควรพิจารณาอย่างจริงจัง (1) ว่าบันทึกนั้นจำเป็นจริง ๆ หรือไม่ และ (2) วิธีอื่นในการจัดเก็บบันทึก อย่างไรก็ตาม สิ่งนี้ยังห่างไกลจากคำถามของคุณ
justanotheruser1019 avatar
us flag
ฉันขอขอบคุณความช่วยเหลือ ปัญหาเดียวที่ฉันมีตอนนี้คือเมื่อฉันดำเนินการด้วยตนเองเพื่อวัตถุประสงค์ในการทดสอบ `sudo /etc/cron.daily/logrotate` มันหมุนได้อย่างสมบูรณ์แบบ แต่ฉันไม่สามารถบันทึกข้อมูลใด ๆ ไปยังไฟล์ syslog ใหม่ได้ ฉันแก้ไขสคริปต์ logrotate `chown syslog:adm syslog` และนั่นกำลังจู้จี้จุกจิก - ดูเหมือนว่าอนุญาตให้เขียนได้หลังจากสร้างหนึ่งหรือสองนาที ความคิดใด ๆ ?

โพสต์คำตอบ

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