Kaip detektuoti serverio apkrovą ir vykdyti skriptus
Norint neperkrauti serverio vykdant cron komandas ar kitomis programomis (pvz. atsarginių kopijų), galima pasinaudoti šiuo skriptu, kuris prieš vykdydamas komandą patikrina serverio apkrovą.
Sukuriame skripto failą:
nano ~/myscript.sh
Scripto ištrauka, pavyzdys (Copy):
### BEGIN SCRIPT ### #! /bin/sh ######################################### ## Set threshold to desired load value ## ######################################### threshold="1.00" ######################################### ## Have ONLY ONE line uncommented here ## ######################################### # Uncomment the next line to use the one minute load average. loadavg=$(uptime | awk '{ print $10 }' | cut -c1-4) # Uncomment the next line to use the five minute load average. #loadavg=$(uptime | awk '{ print $11 }' | cut -c1-4) # Uncomment the next line to use the fifteen minute load average. #loadavg=$(uptime | awk '{ print $12 }' | cut -c1-4) ######################################### result=$(echo "$loadavg > $threshold" | bc) if [ "$result" = 1 ] then # Exit because the load average exceeds our limit. exit else ######################################### ## Load average ok, run these actions ## ######################################### echo "Action 1" echo "Action 2" echo "Action 3" ######################################### fi # Need the 'fi' to close the 'if' ### END SCRIPT ###
CTRL+X išsaugome ir uždarome Nano. Padarome failą vykdomuoju:
chmod +x ~/myscript.sh
Vykdyti skriptą:
~/./myscript.sh
Sėkmės!