Титла: Автоматично стартиране на процес, ако той е спрял Публикувано от: globaluty в Apr 22, 2013, 22:13 Здравейте,
някой може ли да помогне със скрипт, който да проверява например на всеки 10 секунди дали даден процес е спрял и евентуално ако е спрял да го стартира отново. Ако естествено за подобно нещо се изисква скрипт и няма някаква вградена функция на Линукс. Ипозлвам Linux/Debian. Помагайте! Благодарности към отзовалите се. Титла: Re: Автоматично стартиране на процес, ако той е спрял Публикувано от: laskov в Apr 22, 2013, 22:18 Демонът init , конфиг файл /etc/inittab (предполагам) , опция respawn
Титла: Re: Автоматично стартиране на процес, ако той е спрял Публикувано от: runtime в Apr 22, 2013, 23:22 daemontools ($2)?!?
Титла: Re: Автоматично стартиране на процес, ако той е спрял Публикувано от: divak в Apr 23, 2013, 12:30 Общо решение :
Код: #!/bin/bash Това го слагаш във крона да върти през 10 сек. Иначе може и по-интелигентно да си го направиш ...проверява за PID , ако няма стартира процеса, ако има - проверява за процес и тн. Титла: Re: Автоматично стартиране на процес, ако той е спрял Публикувано от: Ali Nebi в Apr 23, 2013, 13:54 Здравей,
би могъл да ползваш и 'monit'. Титла: Re: Автоматично стартиране на процес, ако той е спрял Публикувано от: ivanatora в Apr 23, 2013, 15:35 Това го слагаш във крона да върти през 10 сек. Резолюцията на крона е 1 минута. Може да завъртиш един безкраен цикъл: [pseudocode] do check if process is alive, restart it if not sleep 10 seconds whie true [/pseudocode] Титла: Re: Автоматично стартиране на процес, ако той е спрял Публикувано от: n00b в Apr 23, 2013, 20:00 Има и много по-прост начин...
Ако се стартира процес през bash продължението на скрипта СПИРА докато процеса не спре изпълнението си по един или по др. начин. Ето и готов работещ код: Код: while 1 Титла: Re: Автоматично стартиране на процес, ако той е спрял Публикувано от: Warstomp в Apr 24, 2013, 15:14 Ето това е нашия скрипт под FreeBSD, който следи за spamd демона и го пуска ако не работи, като пише и в лог файл. Само трябва да си заместиш съответните полета и sleep да си го сложиш на 10. Пътищата вероятно са различни за Debian. Стартираш скрипта със & накрая.
Код: #!/bin/sh |