π‘ ΠΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΡΠ΅ΡΡΡΡΠΎΠ² ΡΠ΅ΡΠ²Π΅ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ bash-ΡΠΊΡΠΈΠΏΡΠΎΠ²
ΠΡΠΈΠ²Π΅Ρ, Π»ΡΠ±ΠΈΡΠ΅Π»ΠΈ Linux ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ! π
ΠΡΠ΅ ΠΌΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π±Π΅Π· ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΠ°ΠΌΠΎΠ»Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅ΡΡΠ΅Ρ Π²ΡΡΠΎΡΡ. Π Π²ΠΎΡ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΡΡ ΠΏΡΠΎΡΠ΅ ΠΈ ΠΏΡΠΈΡΡΠ½Π΅Π΅? Π‘Π΅ΠΉΡΠ°Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ!
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ bash-ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ CPU, ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π΄ΠΈΡΠΊΠ° β Π±ΡΡΡΡΡΠΉ, ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±.
Π§ΡΠΎ Π²Π°ΠΆΠ½ΠΎ?
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΊΠ°ΠΆΠ΄ΡΠ΅ 5 ΠΌΠΈΠ½ΡΡ
- Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠΎΡΡΠ΅ ΠΈΠ»ΠΈ Π² ΡΠ°Ρ ΠΏΡΠΈ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠΎΡΠΎΠ³ΠΎΠ²
- ΠΠ΅Π³ΠΊΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠ²ΠΎΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ CPU ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π²ΡΡΠ΅ 80%:
#!/bin/bash
load=$(top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4}')
if (( $(echo "$load > 80" |bc -l) )); then
echo "ΠΡΡΠΎΠΊΠ°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° CPU: $load%" | mail -s "ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ CPU" admin@example.com
fi
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° ΠΏΠ°ΠΌΡΡΡΡ ΠΈ Π΄ΠΈΡΠΊΠΎΠΌ, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ free ΠΈ df. ΠΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· cron β ΠΈ Π²Π°ΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΡ ΡΡΠ°Π½ΡΡ ΡΠΌΠ½Π΅Π΅ Π±Π΅Π· Π»ΠΈΡΠ½ΠΈΡ Π·Π°ΡΡΠ°Ρ.
ΠΠΎΡ Π² ΡΠ΅ΠΌ ΠΊΠ°ΠΉΡ: Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ Π΄Π΅Π»Π°Π΅Ρ ΠΆΠΈΠ·Π½Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΏΡΠΎΡΠ΅, Π° ΡΠ΅ΡΠ²Π΅Ρ β ΡΡΠ°Π±ΠΈΠ»ΡΠ½Π΅Π΅.
Π ΡΡ ΡΠΆΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π» ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΡΠ²ΠΎΠΈΡ ΡΠΈΡΡΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π²ΡΡ Π²ΡΡΡΠ½ΡΡ?
ΠΡΠΈΠ³Π»Π°ΡΠ°Ρ Π² Π½Π°Ρ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ-ΠΊΠ°Π½Π°Π» https://t.me/LinuxSkill, Π³Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΊΠΈΡ Π»Π°ΠΉΡΡ Π°ΠΊΠΎΠ², Π° Π΅ΡΡ β ΡΠ΅ΡΡΡ ΠΈ Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ Π² Π±ΠΎΡΠ΅ https://t.me/gradeliftbot.
π© ΠΠ°Π²ΡΡΠ°: ΠΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ Fail2Ban Π·Π° 5 ΠΌΠΈΠ½ΡΡ! ΠΠΊΠ»ΡΡΠΈ π ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ!