Модераторы: powerfox, ZeeLax
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> резидентный скрипт, как запустить навечно :-) 
:(
    Опции темы
bel_nikita
Дата 3.12.2009, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2304
Регистрация: 12.10.2003
Где: Поезд №21/22 ( ст . Прага )

Репутация: нет
Всего: 47



написал скрипт в bash'е.
скрипт что-то делает, потом запускает программу и впадает в "вечный двигатель": ожидает файла с названием stop или reset.
все чудненько рабоатет, НО!
как только я выхожу из ssh, скрипт автоматом закрывается и его не видно в запущенных процессах.
собсвенно вопрос: Как запускать скрипт резидентно?
Код

...
while true  
do
    if [ -f $reset ]; then
        echo "Restarting APP..."
    Stop_Res
    Start_Res
    rm $reset    
    elif [ -f $stopapp ]; then
      echo "Stopping APP..."
      Stop_Res
      rm $stopapp
      break
    else 
      sleep 2
   fi  
done 



--------------------
user posted image — регистрация доменов от 150 руб.
PM MAIL WWW ICQ   Вверх
BobiKK
Дата 3.12.2009, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 655
Регистрация: 1.12.2005
Где: Essen, Deutschlan d

Репутация: 1
Всего: 16



./superscript &
PM MAIL   Вверх
bilbobagginz
  Дата 3.12.2009, 11:57 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 113
Всего: 317



bel_nikita, скрипт надо запускать через nohup:
Код

nohup ./myscript 





--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
djamshud
Дата 3.12.2009, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 14
Всего: 39



>./superscript &

Не сработает - терминал то отвалится.

>nohup ./myscript 

Могут быть проблемы, если запускать с временного носителя - не даст отмонтировать. Я для сабжа писал демонизатора в пять строк сишного кода.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
bilbobagginz
Дата 3.12.2009, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 113
Всего: 317



Цитата(djamshud @  3.12.2009,  11:09 Найти цитируемый пост)
Могут быть проблемы, если запускать с временного носителя

почему "могут" smile БУДУТ.
а чем это отличается от запуска программы с временного носителя другим методом ?



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
djamshud
Дата 3.12.2009, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 14
Всего: 39



Могут - потому что не всегда нужно выдергивать носительsmile. В общем случае демонизировать нужно.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
spin2
Дата 3.12.2009, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 15.12.2005
Где: Москва-Одесса

Репутация: 5
Всего: 31



bel_nikita, а если не ждать вечно, а запускать по крону почаще?


--------------------
"С кем тяжело молчать, с тем не о чем говорить" (Метерлинк)
блог
Все об ICQ-ботах
PM MAIL WWW ICQ Skype Jabber   Вверх
bilbobagginz
Дата 3.12.2009, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 113
Всего: 317



djamshud, каким образом выражается "временность" временного носителя, если программа не успела лицезреть эту временность ?
smile



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
djamshud
Дата 3.12.2009, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 14
Всего: 39



"Временность" с точки зрения пользователя конечно же. Я например желаю ему прожить дольше программыsmile. А программе на носитель может быть вообще начхать, если она не использует данные с него. Просто операционка откажется отмонтировать якобы используемый носитель. Теперь вы понимаете, почему "могут"?smile Ни в чем нет определенности, в том числе в словах и скрипте топикстартера.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
admsasha
Дата 3.12.2009, 14:15 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 28.1.2005

Репутация: 0
Всего: 6



а screen ? тогда можно в любой момент еще и вывод посмотреть smile
PM MAIL WWW ICQ Jabber   Вверх
bilbobagginz
Дата 3.12.2009, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 113
Всего: 317



admsasha, тоже очень хорошо smile



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
Egik2
Дата 3.12.2009, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 302
Регистрация: 29.7.2008
Где: Агудзера

Репутация: 4
Всего: 11



Есть команда setsid. Например используй так:

setsid 'команда'

она отпустит терминал и уйдет в background, если при этом переоткроешь поток ввода и поток вывода, 
то будет полный демон )))


--------------------
Три великие добродетели программиста: лень, нетерпение и самомнение (Larry Wall)
a-nav.com
developer-blog.ru
world-poetry.org
PM MAIL WWW ICQ   Вверх
bel_nikita
Дата 4.12.2009, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2304
Регистрация: 12.10.2003
Где: Поезд №21/22 ( ст . Прага )

Репутация: нет
Всего: 47



так все-таки как грамотно запустить скрипт?


--------------------
user posted image — регистрация доменов от 150 руб.
PM MAIL WWW ICQ   Вверх
MAKCim
Дата 4.12.2009, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 21
Всего: 207



Код

#include <unistd.h>

int main(int argc, char *argv[], char *envp[])
{
    if (argc < 2)
    {
        return 0;
    }

    if (daemon(1, 1) < 0)
    {
        return -1;
    }

    return execve(argv[1], argv + 1, envp);
}



--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Linux/UNIX: Oбщие вопросы"
nickless
Imple
nerezus

В тему здесь вопросы общие - не привязанные к определенному ПО или дистрибутиву BSD/Linux/UNIX.
Например вопросы о выборе ОС для определенных задач (но если Вы просто хотите узнать "Какой дистрибутив лучше", то для этого есть Клуб юнуксоидов).
Общие вопросы по shell-программированию тоже лучше задавать здесь.


  • Вопросы мобильной разработки тут
  • Вы должны соблюдать правила форума.
  • Помните: какой вопрос, такой и ответ. Прежде чем задать вопрос прочитайте вот эту статью на форуме CIT.
  • Оскорблять запрещается.
  • Религиозные войны в Религиозных войнах.
  • Общение "просто так" в Клубе юнуксоидов. В отличие от многих других разделов, здесь разрешается сдержанно оффтопить и юморить в тему.

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).


В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.


Спасибо. И use UNIX or die; С уважением, nerezus, nickless, powerfox, pythonwin, Imple, ZeeLax.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | *NIX системы: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0564 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.