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:
He modificado los comandos por los de mi server como veran, pero no logro hacerlo andar, me da el siguiente error:Fuente del Script: krazyworks.com/restart-apache-mysql-when-low-on-memory
Código:
Alguien puede ayudarme a hacerlo andar ? : 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
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:
Y este otro:if [ `ps-fu $ USERNAME | awk '/ processname / (x + +) END (print x)'`> 200] then echo "superado" # killall hacer y reiniciar fi
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