+ Responder ao Tópico



  1. #1
    lfss232
    Visitante

    Padrão Menssagem no Squid

    Galera,

    Toda vez que dou um restart no meu squid, me aparece esta menssagem:
    "Restarting proxy server: ./squid: line 1: /etc/squid/.conf: Arquivo ou diretório não encontrado
    Creating squid spool directory structure
    2006/03/21 14:44:17| Squid is already running! Process ID 11550
    2006/03/21 14:44:17| Squid is already running! Process ID 11550"

    Alguém poderia me ajudar??

    Obrigado,

  2. #2

    Padrão Re: Menssagem no Squid

    O que está acontecendo é que no script de inicialização ele está procurando pelo arquivo "/etc/squid/.conf", enquanto este arquivo não existe - o normal é squid.conf -. Já a segunda mensagem diz que o Squid foi reiniciado, mas que ele já estava rodando e pode ser ignorada.


    Abraços



  3. #3
    lfss232
    Visitante

    Padrão Re: Menssagem no Squid

    E como faço para indicar o nome do arquivo certo neste arquivo de inicialização??

    Valeu cara!!

  4. #4

    Padrão Re: Menssagem no Squid

    Bem, não sei se tu compilou ou se você instalou ele através de um pacote pré-compilado. Que distro você usa? Geralmente você arruma o problema editando o arquivo /etc/init.d/squid (Ou /etc/rc.d/squid).


    Abraços!



  5. #5
    lfss232
    Visitante

    Padrão Re: Menssagem no Squid

    Cara, desculpe ficar enchendo o saco, mas eu olhei o arquivo e não achei essa linha, embora ele diga que seja na linha 1, a linha 1 é completamente diferente.. dê uma olhada:

    #! /bin/sh
    #
    # squid Startup script for the SQUID HTTP proxy-cache.
    #
    # Version: @(#)squid.rc 2.20 01-Oct-2001 [email protected]
    #

    NAME=squid
    DAEMON=/usr/sbin/squid
    LIB=/usr/lib/squid
    PIDFILE=/var/run/$squid.pid
    SQUID_ARGS="-D -sYC"

    [ ! -f /etc/default/squid ] || . /etc/default/squid

    PATH=/bin:/usr/bin:/sbin:/usr/sbin

    [ -x $DAEMON ] || exit 0

    grepconf () {
    w=" " # space tab
    sq=/etc/squid/squid.conf
    # sed is cool.
    res=`sed -ne '
    s/^'$1'['"$w"']\+\([^'"$w"']\+\).*$/\1/p;
    t end;
    d;
    :end q' < $sq`
    [ -n "$res" ] || res=$2
    echo "$res"
    }

    grepconf2 () {
    w=" " # space tab
    sq=/etc/squid/$squid.conf
    # sed is cool.
    res=`sed -ne '
    s/^'$1'['"$w"']\+[^'"$w"']\+['"$w"']\+\([^'"$w"']\+\).*$/\1/p;
    t end;
    d;
    :end q' < $sq`
    [ -n "$res" ] || res=$2
    echo "$res"

    }

    #
    # Try to increase the # of filedescriptors we can open.
    #
    maxfds () {
    [ -n "$SQUID_MAXFD" ] || return
    [ -f /proc/sys/fs/file-max ] || return 0
    [ $SQUID_MAXFD -le 4096 ] || SQUID_MAXFD=4096
    global_file_max=`cat /proc/sys/fs/file-max`
    minimal_file_max=$(($SQUID_MAXFD + 4096))
    if [ "$global_file_max" -lt $minimal_file_max ]
    then
    echo $minimal_file_max > /proc/sys/fs/file-max
    fi
    ulimit -n $SQUID_MAXFD
    }

    fixperms () {
    dir=$1
    usr=$2
    grp=$3

    currusr=`/usr/bin/stat -c '%U' $dir`
    currgrp=`/usr/bin/stat -c '%G' $dir`

    if [ $currusr != $usr ]
    then
    chown $usr $dir -R
    fi

    if [ $currgrp != $grp ]
    then
    chgrp $grp $dir -R
    fi

    }

    start () {
    cdr=`grepconf2 cache_dir /var/spool/$squid`
    usr=`grepconf cache_effective_user proxy`
    grp=`grepconf cache_effective_group proxy`


    case "$cdr" in
    [0-9]*)
    echo "squid: squid.conf contains 2.2.5 syntax - not star
    ting!" >&2
    exit 1
    ;;
    esac

    #
    # Create spool dirs if they don't exist.
    #
    if [ -d "$cdr" -a ! -d "$cdr/00" ]
    then
    echo "Creating squid spool directory structure"
    /usr/sbin/squid -z
    fi

    if [ "$CHUID" = "" ]; then
    CHUID=root
    fi

    maxfds
    umask 027
    cd $cdr
    start-stop-daemon --quiet --start \
    --pidfile $PIDFILE \
    --chuid $CHUID \
    --exec $DAEMON -- $SQUID_ARGS < /dev/null
    sleep 1
    }

    stop () {
    PID=`cat $PIDFILE 2>/dev/null`
    start-stop-daemon --stop --quiet --pidfile $PIDFILE --exec $DAEMON
    #
    # Now we have to wait until squid has _really_ stopped.
    #
    sleep 2
    if test -n "$PID" && kill -0 $PID 2>/dev/null
    then
    echo -n "(waiting..."
    cnt=0
    while kill -0 $PID 2>/dev/null

    do
    cnt=`expr $cnt + 1`
    if [ $cnt -gt 60 ]
    then
    #
    # Waited 120 seconds now. Fail.
    #
    echo -n "failed)"
    if [ "$1" = verbose ] ; then
    echo "."
    else
    echo -n " "
    fi
    return
    fi
    sleep 2
    echo -n "."
    done
    echo -n "done)"
    if [ "$1" = verbose ] ; then
    echo " $squid."
    else
    echo -n " "
    fi
    else
    [ "$1" = verbose ] && echo "$squid."
    fi
    }

    case "$1" in
    start)
    echo -n "Starting proxy server: "
    start
    echo "$squid."
    ;;
    stop)
    echo -n "Stopping proxy server: "
    stop verbose
    ;;
    reload|force-reload)
    echo -n "Reloading $squid configuration files..."
    start-stop-daemon --stop --signal 1 \
    --pidfile $PIDFILE --quiet --exec $DAEMON

    echo "done."
    ;;
    restart)
    echo -n "Restarting proxy server: "
    stop
    start
    echo "$squid."
    ;;
    *)
    echo "Usage: /etc/init.d/$squid {start|stop|reload|force-reload|restart}"
    exit 3
    ;;
    esac

    exit 0


    Valeu Cara!!

  6. #6

    Padrão Re: Menssagem no Squid

    O que aconteceu é que você, deus, satanás, algum cracker, algum amigo que gosta de uma brincadeira de mal gosto, ou qualquer outro fenômeno que nem Mulder ou Scully explicariam alteraram o seu script de inicialização do Squid.

    Caso você olhe atentamente para o seu script e depois pensar com carinho no erro que você recebeu ao tentar iniciá-lo, vai perceber que ele está tentando carregar um arquivo de configuração - squid.conf - que não existe.

    Pelo o que eu vi, se você declarar no script uma variável assim:

    Código :
    squid=squid

    No topo, o seu problema tá resolvido. Senão, troque as linhas do seu script onde diz "$squid" para "squid" apenas.

    Eu não preciso nem mencionar que é bom fazer um backup do script, né?



  7. #7
    lfss232
    Visitante

    Padrão Re: Menssagem no Squid

    cara, retirei os $ dos squid e funcionou perfeitamente.

    mais uma vez desculpe a encheção de saco.

    Muito obirgado pela ajuda!!

    Abraços!!!

  8. #8
    wnbraulio
    Visitante

    Padrão Re: Menssagem no Squid

    Olá!

    Edite o arquivo '/etc/rc.d/init.d/squid', e procure pela linha que contenha "/etc/squid/.conf" e a substitua por "/etc/squid.conf" (retirei a última barra).
    Embora varie o caminho do arquivo de configuração squid.conf que pode ser "/etc/squid.conf" ou "/etc/squid/squid.conf".

    Outra alternativa é criar o diretório "/etc/squid" e fazer um link do arquivo "squid.conf" para o arquivo "/etc/squid/.conf", pois acho que também funcionará.

    Inté...