Portál AbcLinuxu, 4. listopadu 2025 11:33
5 3 * * * /script/aplikacia.sh restart
*/3 * * * * /script/aplikacia_check.sh
            Řešení dotazu:
Udělal bych to kontrolou, třeba v tom checku... Grepneš ps a jestli se ta aplikace zrovna restartuje tak to nachvilku uspat...
Omlouvám se, ale obávám se že zcela nerozumím významu slova "neparným", tak váš prosím o osvícení. Bez znalosti definice je těžké poradit :)
1-59/2, ale nejsem si jistý, jak moc je to univerzální.
            #!/bin/bash #Zabit kontrolni program [ "$(/usr/bin/pgrep -x nazev-kontrolniho-programu)" ] && kill $(pgrep -x nazev-kontrolniho-programu) #Muj restart programu..... # #Spustit kontrolni program
Ten kontrolní program se spouští periodicky cronem, takže vaše řešení nevyloučí, že ho cron za běhu skriptu spustí znovu - věty typu "ten skript zaručeně nikdy nepoběží déle než minutu" jsou totiž spolehlivou předzvěstí budoucích problémů.
Takže bych to řešil spíš vyhrazeným souborem ve /var/run, který si skript na začátku zamkne (příkaz flock) a když je zamčený, počká, až se uvolní. U kontroly asi bude lepší použít neblokující režim a pokud je zamčeno, kontrolu vynechat; tím se zároveň vyřeší situace, kdy se kontrola spustí znovu dřív než doběhne předchozí.
pkill.
            
        Tiskni
            
                Sdílej:
                
                
                
                
                
                
            
    
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.