Bash script to determine MaxClients value in apache


#!/bin/bash
echo "This is intended as a guideline only!"
if [ -e /etc/debian_version ]; then
  APACHE="apache2"
elif [ -e /etc/redhat-release ]; then
   APACHE="httpd" fi
RSS=$(ps -aylC $APACHE |grep "$APACHE" |awk '{print $8'} |sort -n |tail -n 1)
RSS=$(expr $RSS / 1024)
echo "Stopping $APACHE to calculate free memory"
/etc/init.d/$APACHE stop &> /dev/null
MEM=$(free -m |head -n 2 |tail -n 1 |awk '{free=($4); print free}')
echo "Starting $APACHE again"
/etc/init.d/$APACHE start &> /dev/null
echo "MaxClients should be around" $(expr $MEM / $RSS)

2 comments:

  1. Thanks dude.This is awesome... Apart from this could you refer some good bash scripting tutorials for me ? I love building scripts but not getting better exposures... lol :)

    ReplyDelete
  2. ./mem
    This is intended as a guideline only!
    ./mem: line 15: syntax error: unexpected end of file

    It seems there is an error on line 15.

    ReplyDelete