+ Responder ao Tópico



  1. #1

    Unhappy Squid

    Ola pessoal preciso urgente de um script para reinicar o squid

    e colocar ele na area de trabalho ja fiz o seguinte

    ./etc/init.d/squid restart

    mas não deu certo alguem me ajude................

  2. #2

    Padrão

    que distribuição está usando?

  3. #3

    Padrão

    #!/bin/sh

    case "$1" in
    start)
    /usr/local/sbin/squid
    ;;
    stop)
    /usr/bin/killall -9 squid
    ;;
    restart)
    /usr/local/sbin/squid -k reconfigure
    ;;
    *)
    echo "Usage: $0 {start|stop|restart}"
    exit 1
    esac


    vc só precisa mudar o caminho do squid!

    Citação Postado originalmente por slach Ver Post
    Ola pessoal preciso urgente de um script para reinicar o squid

    e colocar ele na area de trabalho ja fiz o seguinte

    ./etc/init.d/squid restart

    mas não deu certo alguem me ajude................
    Última edição por andersoneduardo; 17-03-2008 às 23:08.

  4. #4

    Padrão

    NUNCA.. mas NUNCA mesmo de um kill -9 no squid !!

    sempre pare o squid com o seguinte comando:

    squid -k shutdown

    pois se voce matar o processo, ele nao grava o indice que ele mantem na memoria ... entao na hora de iniciar, ele tem q fazer o rebuild do cache todo, e a performance vai la em baixo ateh que ele termine de gerar novamente o indice...

    eu fiz um script start/stop para squid, ficou mto bom.. segue:

    Código :
    #!/bin/bash
     
    # rc.squid - Comanda o daemon squid
    # Alexandre J Correa <[email protected]>
     
    PID=`/sbin/pidof squid`
    RUN=0
    SQUID="/usr/sbin/squid"
    OPTS="-D -s"
     
     
    if `kill -CHLD $PID > /dev/null 2>&1`; then
            RUN=1
    fi
     
    squid_start() {
            if [ "$RUN" == "1" ]; then
                    echo "Squid ja esta rodando..."
                    exit 1
            fi
            echo -n "Iniciando squid..."
            ulimit -HSd unlimited
            ulimit -HSf unlimited
            ulimit -HSm unlimited
            ulimit -HSn 16384
            ulimit -HSs unlimited
            ulimit -HSt unlimited
            ulimit -HSv unlimited
            ulimit -HSc unlimited
     
            $SQUID $OPTS >> /var/log/squid/squid.out 2>&1
            RETVAL=$?
     
            if [ $RETVAL -eq 0 ]; then
                    echo " OK"
            else
                    echo " ERRO"
            fi
            return $RETVAL
    }
    squid_stop() {
            if [ "$RUN" == "0" ]; then
                    echo "Squid nao esta ativo..."
                    exit 1
            fi
            echo -n "Finalizando squid..."
            $SQUID -k shutdown &
            while : ; do
                    echo -n "."
                    [ -f /var/run/squid.pid ] || break
                    sleep 1
            done
            echo " OK"
    }
    squid_reload() {
            if [ "$RUN" == "0" ]; then
                    echo "Squid nao esta ativo..."
                    exit 1
            fi
            $SQUID $OPTS -k reconfigure
    }
    squid_restart() {
            squid_stop
            squid_start
    }
     
    case "$1" in
    start)
        squid_start
        ;;
     
    stop)
        squid_stop
        ;;
     
    reload)
        squid_reload
        ;;
     
    restart)
        squid_restart
        ;;
    *)
        echo $"Uso: $0 {start|stop|reload|restart}"
        exit 1
    esac
     
    exit $?

  5. #5

    Padrão

    opa.

    Nao sabia desse detalhe!

    Brigadão ae!

  6. #6

    Padrão

    'service squid restart' nao da certo nao?

  7. #7

    Padrão

    nao sao todas as distros que usam o padrao initv (slackware, debian por ex..)

  8. #8

    Unhappy

    fiz o scrip mas deu certo não

    #!/bin/bash
    #
    #***************************************************************************
    # rc.squid
    #
    # Shell script para iniciar, parar e reiniciar o servidor proxy(squid)
    #
    # Copyright (C) 2008 Jean Alves
    #
    # E-mail: [email protected]
    #
    # This file may be distributed under the terms of the GNU General
    # Public License.
    #
    # Licença: GPL
    #
    # Use: rc.squid start|stop|restart
    #
    #***************************************************************************

    # O arquivo binário do squid deve estar em /usr/sbin/squid
    # Contém o PID do servidor squid
    PID_FILE=/var/run/squid.pid

    # Inicia o Servidor Squid, e caso já esteja rodando informa ao administrador
    # Start squid:
    squid_start() {
    if [ -e $PID_FILE ]; then
    echo
    echo "-----------------------------------"
    echo "O Servidor proxy estar em execução."
    echo "-----------------------------------"
    echo
    elif [ -G /usr/sbin/squid ]; then
    /usr/sbin/squid &&
    echo "Servidor proxy iniciado."
    else
    echo "Você não tem permissão para rodar."
    fi
    }

    # Para o servidor proxy
    # Stop squid:
    squid_stop() {
    if [ -e $PID_FILE ]; then
    kill -9 $(cat $PID_FILE) &&
    rm -f $PID_FILE &&
    echo
    echo "-----------------------------------"
    echo "Servidor proxy parado."
    echo "-----------------------------------"
    echo
    fi
    }

    # Reinicia o Servidor proxy
    # Restart squid
    squid_restart() {
    squid_stop
    sleep 1
    squid_start
    }

    # Argumentos que podem ser fornecidos ao scripts
    # Opções
    case $1 in
    'start')
    squid_start
    ;;
    'stop')
    squid_stop
    ;;
    'restart')
    squid_restart
    ;;
    *)
    echo "Use $0 start|stop|restart"
    esac

    o que tenho de mudar para funcionar