Diskuse:Watchdog na routovaci tabulku

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání

cron

Vojto, stalo by za to, trosku popsat co delat, pokud cron nespusti ten skript. U sebe mam trebas problem, ze mam vsechno presne podle clanku ale cron mi ten skript nepusti. (ale rucne funguje). diky.

Pokud ti nefunguje cron, tak jednak se ujisti, ze do cronu nepises uvozovky, ktery jsou v komentari ve skriptu a zaroven, ze skript ma prava pro spusteni (chmod +x routedog.sh) Lada

optimalizace

Vojto, jsi autor, takze ti nebudu do zdrojaku hrabat, ale tady mam trochu optimalnejsi kod:

misto

POLOZEK="`route -n | grep ^[0-9] | wc -l | sed s/[^0-9]//`"

dat

POLOZEK=$(ip route | grep -c ^[0-9])

zaroven se mi v ausu podminka

if ! ps ax | grep ospfd | grep -v grep &>/dev/null
then
...
fi

soustela uplne pokazde, nehlede na tom, jestli proces bezi, nebo ne. to jsem vyresil takhle

ps ax | grep -v grep | grep -q ospfd || {
...
}

Lada

Tu podminku bych vyresil takto:

if ! ps ax | grep [o]spfd &> /dev/null; then
...
fi

Tim, ze jeden znak dam do hranatych zavorek se hledany retez nezmeni, ale samotny grep nebude vyhovovat ;-). Jezz

Harry ted mel na svym debianu stejnej problem... spoustelo se to pokazde, tak jsem to definitivne vyresil takhle:

ps ax | grep -q [o]spfd || {
...
}

Lada

LOL, tady je to jak nějaká diskuze (update: ona je to fakt diskuze :)) To už bych to teda udělal rovnou jako:

ps axc | grep -q ospfd || {
...
}

(významné je to "c", ale ps v busyboxu to neumí...), nebo IMHO úplně nejlíp:

killall -0 ospfd >/dev/null 2>&1 || {
...
}

martink :)