Запуск двух сервисов
От: Brother2007  
Дата: 17.01.07 14:56
Оценка:
Добрый вечер!

Имеется два сервиса, к примеру Service1 и Service2.
Я их запускаю скриптом так:

Service1 &
Service2


Как мне сделать так чтобы Service2 запускался только после запуска Service1?
Re: Запуск двух сервисов
От: ДимДимыч Украина http://klug.org.ua
Дата: 17.01.07 15:33
Оценка:
Здравствуйте, Brother2007, Вы писали:

B>
B>Service1 &
B>Service2
B>


B>Как мне сделать так чтобы Service2 запускался только после запуска Service1?


Они так и запускаются: сначала Service1 в фоне, потом Service2.
Обязательно бахнем! И не раз. Весь мир в труху! Но потом. (ДМБ)
Re[2]: Запуск двух сервисов
От: Brother2007  
Дата: 17.01.07 15:36
Оценка:
Здравствуйте, ДимДимыч, Вы писали:

ДД>Здравствуйте, Brother2007, Вы писали:


B>>
B>>Service1 &
B>>Service2
B>>


B>>Как мне сделать так чтобы Service2 запускался только после запуска Service1?


ДД>Они так и запускаются: сначала Service1 в фоне, потом Service2.


дело в том что периодически выскакивает ошибка, я так понял что из-за того что иногда Service2 запускается когда Service1 еще не полностью запустился(может он там конфигурирует чтото). Как мне хотя бы поставить задержку перед запуском Service2?
Re[3]: Запуск двух сервисов
От: raskin Россия  
Дата: 17.01.07 15:38
Оценка:
Brother2007 wrote:
> B>>Service1 &
> B>>Service2
> B>>
>
> B>>Как мне сделать так чтобы Service2 запускался только после запуска
> Service1?
>
> ДД>Они так и запускаются: сначала Service1 в фоне, потом Service2.
>
> дело в том что периодически выскакивает ошибка, я так понял что из-за
> того что иногда Service2 запускается когда Service1 еще не полностью
> запустился(может он там конфигурирует чтото). Как мне хотя бы поставить
> задержку перед запуском Service2?
sleep <time>

А кстати, Service1 сам в фон не уходит, то есть это не нормальный демон?
А то бывает, что и
Service1 ; Service2
работает.
Posted via RSDN NNTP Server 2.1 beta
Re[4]: Запуск двух сервисов
От: Brother2007  
Дата: 17.01.07 15:49
Оценка:
R>sleep <time>
спасибо

R>А кстати, Service1 сам в фон не уходит, то есть это не нормальный демон?

R>А то бывает, что и
R>Service1 ; Service2
R> работает.

нет, не уходит сам и так не работает

поставил задержку перед запуском Service2 — вроде работает
Re[3]: Запуск двух сервисов
От: ДимДимыч Украина http://klug.org.ua
Дата: 18.01.07 07:36
Оценка: +1
Здравствуйте, Brother2007, Вы писали:

B>дело в том что периодически выскакивает ошибка, я так понял что из-за того что иногда Service2 запускается когда Service1 еще не полностью запустился(может он там конфигурирует чтото). Как мне хотя бы поставить задержку перед запуском Service2?


А, Вы в этом смыле. Тривиального решения не существует, т.к. shell не знает, когда именно Service1 проинициализирует нужные для Service2 ресурсы. Одним из решений, как уже здесь сказал raskin, будет sleep между запусками. Другое решение, если Service2 Ваш, пробовать соединиться с Service1, если не удалось — подождать некоторое время, пробовать опять. Если не удалось за несколько попыток, только тогда выходить с ошибкой.
Еще было бы неплохо знать, что создает Service1, когда инициализируется: файл? сокет? объект shared memory? Тогда можно реализовать поллинг события из shell'а.
Обязательно бахнем! И не раз. Весь мир в труху! Но потом. (ДМБ)
Re: Запуск двух сервисов
От: 0x8000FFFF Россия  
Дата: 18.01.07 07:48
Оценка:
Не отдавай управление до тех пор, пока не запустишься окончательно.
Re: Запуск двух сервисов
От: Dobrolubov Россия  
Дата: 30.01.07 12:13
Оценка:
Здравствуйте, Brother2007, Вы писали:

B>Добрый вечер!


B>Имеется два сервиса, к примеру Service1 и Service2.

B>Я их запускаю скриптом так:

B>
B>Service1 &
B>Service2
B>


B>Как мне сделать так чтобы Service2 запускался только после запуска Service1?



# ( serivce1 & ) && service2

При этом код возврата должен формироваться правильно
Re[2]: Запуск двух сервисов
От: Dobrolubov Россия  
Дата: 30.01.07 12:21
Оценка:
Здравствуйте, Dobrolubov, Вы писали:

D>Здравствуйте, Brother2007, Вы писали:


B>>Добрый вечер!


B>>Имеется два сервиса, к примеру Service1 и Service2.

B>>Я их запускаю скриптом так:

B>>
B>>Service1 &
B>>Service2
B>>


B>>Как мне сделать так чтобы Service2 запускался только после запуска Service1?



D># ( serivce1 & ) && service2


D>При этом код возврата должен формироваться правильно


я немного ошибся, надо так:

# ( service1 && service2 ) &
Re[3]: Запуск двух сервисов
От: ДимДимыч Украина http://klug.org.ua
Дата: 30.01.07 12:40
Оценка:
Здравствуйте, Dobrolubov, Вы писали:

D> я немного ошибся, надо так:

D># ( service1 && service2 ) &

Все равно service2 не запустится, пока не отработает service1 (см. обсуждение выше по ветке).
Обязательно бахнем! И не раз. Весь мир в труху! Но потом. (ДМБ)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.