URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 95277
[ Назад ]

Исходное сообщение
"Ubuntu не останавливается squid"

Отправлено teddy_val , 12-Дек-13 18:56 
Коллеги,
На системе 10.04LTS через репозитарий установлен Squid3
Проблема в том, что командой
service squid3 start запустить его можно
А вот команда
service squid3 stop
не работает
# ps axwwf | grep squid
2836 pts/4    S+     0:00          \_ grep --color=auto squid
31431 ?        Ss     0:00 /usr/sbin/squid3 -D -YC -f /etc/squid3/squid.conf
31434 ?        S      0:10  \_ (squid) -D -YC -f /etc/squid3/squid.conf
31435 ?        S      0:00      \_ (squid_ldap_auth) -h 127.0.0.1 -b ou=pj0046,o=xxx,c=su -f uid=%s -v 3
31436 ?        S      0:00      \_ (squid_ldap_auth) -h 127.0.0.1 -b ou=pj0046,o=xxx,c=su -f uid=%s -v 3
31437 ?        S      0:00      \_ (squid_ldap_auth) -h 127.0.0.1 -b ou=pj0046,o=xxx,c=su -f uid=%s -v 3
31438 ?        S      0:00      \_ (squid_ldap_auth) -h 127.0.0.1 -b ou=pj0046,o=xxx,c=su -f uid=%s -v 3
31439 ?        S      0:00      \_ (squid_ldap_auth) -h 127.0.0.1 -b ou=pj0046,o=xxx,c=su -f uid=%s -v 3
31440 ?        S      0:00      \_ (squid_ldap_group) -h localhost -b ou=pj0046,o=xxx,c=su -f (&(cn=%a)(memberUid=%v))
31441 ?        S      0:00      \_ (squid_ldap_group) -h localhost -b ou=pj0046,o=xxx,c=su -f (&(cn=%a)(memberUid=%v))
31442 ?        S      0:00      \_ (squid_ldap_group) -h localhost -b ou=pj0046,o=xxx,c=su -f (&(cn=%a)(memberUid=%v))
31443 ?        S      0:00      \_ (squid_ldap_group) -h localhost -b ou=pj0046,o=xxx,c=su -f (&(cn=%a)(memberUid=%v))
31444 ?        S      0:00      \_ (squid_ldap_group) -h localhost -b ou=pj0046,o=xxx,c=su -f (&(cn=%a)(memberUid=%v))

После команды стоп даже пиды процессов не меняются.
Сквид работает от пользователя proxy
# ls -alp /var/run/squid.pid
-rw-r--r-- 1 proxy proxy 6 2013-12-12 17:59 /var/run/squid.pid
Из Файла /etc/init.d/squid3
NAME=squid3
DESC="Squid HTTP Proxy 3.0"
DAEMON=/usr/sbin/squid3
PIDFILE=/var/run/$NAME.pid
CONFIG=/etc/squid3/squid.conf
SQUID_ARGS="-D -YC -f $CONFIG"

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
                log_action_begin_msg " Waiting"
                cnt=0
                while kill -0 $PID 2>/dev/null
                do
                        cnt=`expr $cnt + 1`
                        if [ $cnt -gt 24 ]
                        then
                                log_action_end_msg 1
                                return 1
                        fi
                        sleep 5
                        log_action_cont_msg ""
                done
                log_action_end_msg 0
                return 0
        else
                return 0
        fi
}

Короче смысл в том, что не работает:
start-stop-daemon --stop --pidfile 31431 --exec /usr/sbin/squid3
No /usr/sbin/squid3 found running; none killed.
Но процесс то такой есть как видно выше?


Содержание

Сообщения в этом обсуждении
"Ubuntu не останавливается squid"
Отправлено Дядя_Федор , 12-Дек-13 19:16 
> Короче смысл в том, что не работает:
> start-stop-daemon --stop --pidfile 31431 --exec /usr/sbin/squid3

Офигенно Вы PIF ФАЙЛ(!) указали. Просто офигенно! А посмотреть значение переменной PIDFILE - не?


"Ubuntu не останавливается squid"
Отправлено Дядя_Федор , 12-Дек-13 19:16 
>  Офигенно Вы PIF ФАЙЛ(!) указали.

PID, очепятка


"Ubuntu не останавливается squid"
Отправлено михалыч , 12-Дек-13 20:15 
> Короче смысл в том, что не работает:
> start-stop-daemon --stop --pidfile 31431 --exec /usr/sbin/squid3
> No /usr/sbin/squid3 found running; none killed.
> Но процесс то такой есть как видно выше?

Вы действительно ошиблись с указанием pid-файла squid

вот вы показываете
> -rw-r--r-- 1 proxy proxy 6 2013-12-12 17:59 /var/run/squid.pid

а в скрипте у вас
> NAME=squid3
> PIDFILE=/var/run/$NAME.pid

то есть получаем
PIDFILE=/var/run/squid3.pid

а его на самом деле нет.
исправьте NAME=squid


"Ubuntu не останавливается squid"
Отправлено teddy_val , 12-Дек-13 21:38 
>[оверквотинг удален]
> Вы действительно ошиблись с указанием pid-файла squid
> вот вы показываете
>> -rw-r--r-- 1 proxy proxy 6 2013-12-12 17:59 /var/run/squid.pid
> а в скрипте у вас
>> NAME=squid3
>> PIDFILE=/var/run/$NAME.pid
> то есть получаем
> PIDFILE=/var/run/squid3.pid
> а его на самом деле нет.
> исправьте NAME=squid

Спасибо исправил и заработало!
Меня смутило то, что файл /var/run/squid3.pid существовал и содержал актуальный пид процесса.