Сценарий предназначен для добавления на вкладку cron. Последовательность выполнения сценария оболочки должна быть такой. { {1}} 1. Проверяет состояние ЦП. 2. Проверяет использование ОЗУ. 3. Проверяет использование жесткого диска. 4. Отправляет письмо с предупреждением получателям, если какое-либо из них превышает пороговое значение. (скажем, 90%)
@ match = grep {$ _> 90} (
df -H
= ~ / (\ S +%) / g);print "@matches \ n" ;
Возвращает результат 'df _H', если он превышает 90%
для ОЗУ,
свободно | grep Mem | awk '{print $ 3 / $ 2 * 100.0}'
Приведенная выше команда возвращает использование ОЗУ в процентах
Теперь это следует сравнить с порогом в 80%. Затем, если какой-либо из параметров Приведенные выше значения [HDD / RAM] находятся на высоком уровне, программа должна отправить письмо с добавлением результата команды 'top' в нем, чтобы показать использование процессора.
Пожалуйста, помогите.
Это должно быть добавлено на вкладку cron для запуска через равные промежутки времени. Пожалуйста, обновите.
Давайте запустимся.
Создают load.sh
, сценарий
nano /path/load.sh
#!/bin/bash
#we use output from "uptime" i "w" to have load on 5 min
UPTIME=`uptime`;
W=`w`;
RAM=`free -m`;
DATE=`date`;
sleep 3
DF=`df -h`
sleep 3
echo "######################################" >> /var/log/load-result/load_log
echo "$DATE" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "UPTIME:" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "$UPTIME" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "W COMMAND:" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "$W" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "FREE RAM:" >> /var/log/load-result/load_log
echo "$RAM" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "FREE SPACE:" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "$DF" >> /var/log/load-result/load_log
echo "" >> /var/log/load-result/load_log
echo "#####################################" >> /var/log/load-result/load_log
дает разрешение
chmod 777 /path/load.sh
сценария X, Создают dir для хранения файла журнала
sudo mkdir /var/log/load-result
, Создают сценарий для отправки, письма
nano /path/mail.sh
mail -s Load_From_PC soma@email.com < /var/log/load-result/load_log
Дают X mail.sh
chmod 777 /path/mail.sh
, Создают задания крона
sudo crontab -e
*/5 * * * * /path/load.sh
00 11 * * * /path/mail.sh
load.sh
, будет выполняемый на каждых 5 минутах и следовать из сценария, будет добавлен в нижней части в файле журнала.
mail.sh
будет инициирован каждый день в 11:00 h
, можно изменить время...