Модераторы: ginnie, korob2001
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не работает Proc::Daemon на Oracle Solaris 10 9/10, Даемон запускается, но не исполняется. 
V
    Опции темы
Antoniously
Дата 29.6.2011, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Привет

Пробую запустить даемон для одной задачки на Oracle Solaris 10 9/10, он запускается, но ничего в лог не пишется об исполнении.

Пакет Proc-Daemon-0.14. Пробовал разные, но безуспешно.

Код простой (для теста):

#!/usr/bin/perl -w
use Proc::Daemon;
Proc::Daemon::Init;
while ("true") {
system "date >> date.log";
sleep 1;
}

Может подскажет кто что делать? Очень нужно

Заранее спасибо smile 
PM MAIL   Вверх
OutlawZ
Дата 29.6.2011, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 269
Регистрация: 19.10.2007

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



Нет возможности установить модуль но попробуйте так:

Код

#!/usr/bin/perl -w
use Proc::Daemon;
$true = Proc::Daemon::Init;
while (defined($true)) {
system "date >> date.log";
sleep 1;
}



Или задать if после инициализации  демона , дать переменной $true = 1; и по результатам если 1 то пишем если 0 то провал.

Это сообщение отредактировал(а) OutlawZ - 29.6.2011, 19:18


--------------------
user posted image
user posted image
PM MAIL   Вверх
Pfailed
Дата 29.6.2011, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Antoniously, на то он и демон, что stdin и stdout закрываются или куда-то перенаправляются. Читайте документацию.


--------------------
PM MAIL   Вверх
Antoniously
Дата 29.6.2011, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(OutlawZ @ 29.6.2011,  19:15)
Нет возможности установить модуль но попробуйте так:

Код

#!/usr/bin/perl -w
use Proc::Daemon;
$true = Proc::Daemon::Init;
while (defined($true)) {
system "date >> date.log";
sleep 1;
}



Или задать if после инициализации  демона , дать переменной $true = 1; и по результатам если 1 то пишем если 0 то провал.

Я совсем чайник smile 
Пробовал вот так:
#!/usr/bin/perl -w
use Proc::Daemon;
$true = Proc::Daemon::Init;
print "$true\n\n";
$true = 1;
while (defined($true)) {
if ($true == 1) {
system "date >> date.log";
}
sleep 1;
}

но всё так же, только скрипт не уходит в процесс. Лог не пишется smile 

Надо чтоб уходил в фон (в процесс) и писался лог, не получается smile  smile  smile 

но всё равно, спасибо за участие в решение проблемы smile 

Это сообщение отредактировал(а) Antoniously - 29.6.2011, 22:00
PM MAIL   Вверх
OutlawZ
Дата 29.6.2011, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 269
Регистрация: 19.10.2007

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



Pfailed посоветовал вам прочитать документацию по модулю perldoc Proc::Daemon , если плохо с английским используйте on-line переводчики они донесут смысл. 


--------------------
user posted image
user posted image
PM MAIL   Вверх
Pfailed
Дата 30.6.2011, 07:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



stdin & stdout в вашем случае ни при чем. Демон при старте меняет рабочую директорию на корневую, а вы указываете относительный путь к файлу . Указывайте абсолютный путь.


--------------------
PM MAIL   Вверх
Antoniously
Дата 30.6.2011, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Pfailed @ 30.6.2011,  07:16)
stdin & stdout в вашем случае ни при чем. Демон при старте меняет рабочую директорию на корневую, а вы указываете относительный путь к файлу . Указывайте абсолютный путь.

Вот этот совет действительно помог. Спасибо smile

Добавлено через 2 минуты и 18 секунд
Вопрос закрыт
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: Системное программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к системному программированию на Perl
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

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


 




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


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

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