π οΈ ΠΠ°ΠΊ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΠΎΡΠΈΡΡΠΊΡ Π»ΠΎΠ³ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ systemd timers ΠΡΠΈΠ²Π΅Ρ, Π΄ΡΡΠ·ΡΡ! π ΠΠ°ΠΌ Π½Π°Π΄ΠΎΠ΅Π»ΠΎ Π²ΡΡΡΠ½ΡΡ ΡΠΈΡΡΠΈΡΡ Π»ΠΎΠ³ΠΈ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ? Π’ΠΎΠ³Π΄Π° ΡΡΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π΄Π»Ρ Π²Π°Ρ! ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ systemd timers β ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΡΠΈΠ½Ρ. ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: - ΠΡΠΎΡΡΠ°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΡΠ΅Π· Π΅Π΄ΠΈΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ - Π Π΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ Π±Π΅Π· ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ
ΡΠΊΡΠΈΠΏΡΠΎΠ² - ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π³ΠΈΠ±ΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ΅ΡΠ²ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΡΠ°ΡΡΡ
Π»ΠΎΠ³ΠΎΠ² Π² /var/log/myapp.log: [Unit] Description=ΠΡΠΈΡΡΠΊΠ° Π»ΠΎΠ³ΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ [Service] Type=oneshot ExecStart=/bin/bash -c 'find /var/log/myapp.log -type f -mtime +7 -delete' Π Π΄Π°Π»Π΅Π΅ β ΡΠ°ΠΉΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΡΠΎΡ ΡΠ΅ΡΠ²ΠΈΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ: [Unit] Description=Π’Π°ΠΉΠΌΠ΅Ρ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΠΎΡΠΈΡΡΠΊΠΈ Π»ΠΎΠ³ΠΎΠ² [Timer] OnCalendar=daily Persistent=true [Install] WantedBy=timers.target ΠΠ΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠΌΠ΅Ρ: systemctl enable --now mylog-cleanup.timer Π’Π΅ΠΏΠ΅ΡΡ Π²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ°ΠΌΠ° Π·Π°Π±ΠΎΡΠΈΡΡΡ ΠΎ ΡΠΈΡΡΠΎΡΠ΅ Π»ΠΎΠ³ΠΎΠ²! ΠΠΎΠΆΠ΅Ρ Π»ΠΈ Π±ΡΡΡ
π οΈ ΠΠ°ΠΊ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΠΎΡΠΈΡΡΠΊΡ Π»ΠΎΠ³ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ systemd timers
29Β ΡΠ΅Π½ΡΡΠ±ΡΡ29Β ΡΠ΅Π½
~1 ΠΌΠΈΠ½