Squid problem

Stepan Kasal kasal na matsrv.math.cas.cz
Pondělí Březen 23 18:23:04 CET 1998


On 22 Mar 1998 16:01:34 +0100, Petr Simek <petrsi na jcu.cz> wrote:
> A co treba: if ! ps -aux | grep squid | grep -v grep > /dev/null 
>             then
>               restart_squid
>             fi

No jisteze to v praxi funguje, ale my teoretici mame strach z toho,
ze nekdo pojmenuje svuj program "asqide" a nam kvuli tomu nepobezi
squid. Nebo treba bezi nekomu "find / -name squid".
Proto jsem uvadel vsechny ty slozity myslenky.

Zajimavy je tento problem v souboru /etc/rc.d/init.d/functions
(na SysV init), tam je funkce pidofproc. Tahle funkce, kdyz nic
nenajde v /var/run, tak zkousi prave ps -aux. A to uz neni legrace,
kdyz se splete, protoze se to pouziva i na killovani subsytemu.

RedHat tam puvodne mel:
         ps auxw | awk 'BEGIN { prog=ARGV[1]; ARGC=1 }
                        { if ((prog == $11) || (("(" prog ")") == $11) ||
                        ((prog ":") == $11)) { print $2 } }' $1
coz mi odmitalo sestrelit proces, ktery bezel den a mel tudiz datum jako
dve slova, ne jedno.
Vyrobil jsem patch, ale moc hrdej nato nejsem:
        ps auxw | cut -c-41,51- | awk 'BEGIN { prog=ARGV[1]; ARGC=1 }
                           { if ((prog == $9) || (("(" prog ")") == $9) ||
                           ((prog ":") == $9)) { print $2 } }' $1
tak proto jsem si styskal.

				S pozdravem,	Stepan Kasal


Další informace o konferenci Linux