π‘ ΠΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π²Π°ΠΆΠ½ΡΡ
Π»ΠΎΠ³ΠΎΠ² Π² Linux ΠΠ½ΠΎΠ³ΠΈΠ΅ sysadminΡ ΠΈ DevOps-ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ ΠΌΠ΅ΡΡΠ°ΡΡ ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΠΌΠ° Π±Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π»Π° ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΎΠ±ΡΡΠΈΡ ΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»ΡΠ»Π° Π±Ρ Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΡΡΡΡ, Π½ΠΎ ΠΌΠΎΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° β Π±Π΅Π· Π»ΠΈΡΠ½ΠΈΡ
ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ
ΡΡΠ΅Π΄ΡΡΠ² Linux. π ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ ΡΡΠΈΠ»ΠΈΡΠ° journalctl ΠΈ ΠΊΡΠΎΠ½, ΡΡΠΎΠ±Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π»ΠΎΠ³ΠΈ. β Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠ΅Ρ Π² Π»ΠΎΠ³Π°Ρ
ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ»ΠΈ Π²Π°ΠΆΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²Π°ΠΌ: #!/bin/bash if journalctl -p err --since "5 minutes ago" | grep -qi "error"; then echo "ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ° Π² Π»ΠΎΠ³Π°Ρ
!" | mail -s "ΠΡΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠ°" admin@example.com fi β ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ Π² cron, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π·Π°ΠΏΡΡΠΊΠ°Π»ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠ΅ 5 ΠΌΠΈΠ½ΡΡ: */5 * * * * /ΠΏΡΡΡ/ΠΊ/ΡΠΊΡΠΈΠΏΡΡ.sh Π’Π΅ΠΏΠ΅ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ°ΠΌΠ° Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π½Ρ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ, ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ, ΡΠΎΠΎΠ±ΡΠ°ΡΡ ΡΠ΅Π±Π΅. ΠΡΠΎ β ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄Π΅ΡΠΆΠ°ΡΡ ΡΡΠΊΡ Π½Π° ΠΏΡΠ»ΡΡΠ΅ Π±Π΅Π· Π½Π°Π²ΠΎΡΠΎΡΠ΅Π½Π½ΡΡ
ΡΠ΅ΡΠ΅Π½ΠΈΠΉ. Π’Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡ
π‘ ΠΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π²Π°ΠΆΠ½ΡΡ Π»ΠΎΠ³ΠΎΠ² Π² Linux
27Β ΡΠ΅Π½ΡΡΠ±ΡΡΒ 202527Β ΡΠ΅Π½Β 2025
~1 ΠΌΠΈΠ½