Hola amigos
Ando con un problema bastante grabe de DDOS, ya he hecho todo para frenarlo pero es inutil.........
En fin necesito su ayuda para hacer andar un Script que lo que hace es Reiniciar Apache y mySQL cuando el servidor se empiesa a quedar sin memoria...
El Script es el siguiente:
Código:
#!/bin/bash
threshold=90 #percent
total=$(free | grep "Mem:" | awk '{print $2}')
remaining=$(free | grep "Mem:" | awk '{print $4}')
current=$(echo "scale=0;100-$remaining * 100 / $total" | bc -l)
if [ $current -gt $threshold ]
then
/etc/init.d/httpd stop
/etc/init.d/mysqld restart
/etc/init.d/httpd start
echo "Restarted apache and mysql on `date +'%Y-%m-%d %H:%M:%S'`. RAM utilization at ${current}%" \
>> /var/log/apache_mysql_restarter.log
fi
Código:
Fuente del Script: krazyworks.com/restart-apache-mysql-when-low-on-memory
He modificado los comandos por los de mi server como veran, pero no logro hacerlo andar, me da el siguiente error:
Código:
: command not foundne 2:
(standard_in) 1: illegal character: ^M
(standard_in) 1: illegal character: ^M
: command not foundne 7:
memoria-baja.sh: line 17: syntax error: unexpected end of file
Alguien puede ayudarme a hacerlo andar ?
Tambien he encontrado este otro scrip que lo que hace es que cuando apache tenga mas de 200 procesos activo, lo mata y lo reinicia, pero no se como usarlo ni si funciona:
Código:
if [ `ps-fu $ USERNAME | awk '/ processname / (x + +) END (print x)'`> 200] then echo "superado" # killall hacer y reiniciar fi
Y este otro:
Código:
[[$ (Ps ax | grep httpd | wc-l)-gt 200]] (& & kill -9 $ (ps ax | grep httpd | awk '(print $ 1;)'); apachectl start;)
Código:
Fuente: unix.com/shell-programming-scripting/35927-need-help-shell-script-restart-apache-when-no-processes-keeps-growing.html?hl=es
-----------------------
Alguien puede ayudarme ? Mil gracias