Автор Тема: работа скрипта на сервере в бекграунде  (Прочитано 3453 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Slike

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как заставить работать скрипт на сервере в бекграунде

то есть из командной строки запускаем скрипт, отключаемся от сервера, затем снова коннектимся и имеем управление над скриптом ?

:beer:

Оффлайн Ivan Kolesnikov

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 39
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
работа скрипта на сервере в бекграунде
« Ответ #1 : 30 Марта 2005, 12:57:35 »
Не совсем понятно, что именно понимается под управлением.

Оффлайн Slike

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
работа скрипта на сервере в бекграунде
« Ответ #2 : 30 Марта 2005, 19:05:16 »
хотя управление тут одно - убить процесс

Оффлайн cr4ck3r

  • Фанат Perl
  • Постоялец
  • ***
  • Сообщений: 146
  • +0/-0
  • 2
    • Просмотр профиля
    • http://perlmonks.org.ru
работа скрипта на сервере в бекграунде
« Ответ #3 : 31 Марта 2005, 10:19:45 »
Вот простая функция для перевода скрипта в дэмон. Отключаешься, забываешь а нем вообще - потом можешь придти и кильнуть его. :)
Принимает в качестве аргумента ссылку на хэш. Это кусок кода из IRC::Bot скрипта.

sub daemon {

    my $self = shift;

    my @fh = ( \\*STDIN, \\*STDOUT );

    my $path;
    $self->{\'LogPath\'} eq \'null\' ? $path = $ENV{\'HOME\'} : $path =
      $self->{\'LogPath\'};
    open \\*STDERR, ">$path/error.log";
    select( ( select( \\*STDERR ), $| = 1 )[0] );

    my $ppid = $$;

    my $pid = fork && exit 0;

    !defined $pid && croak "No Fork: ", $!;

    while ( kill 0, $ppid ) {
        select undef, undef, undef, .001;
    }

    my $session_id = POSIX::setsid();
    chdir \'/\' || croak "Could not cd to /", $!;
    my $oldmask = umask 00;
    close $_ || croak $! for @fh;

}
Ворота в perl - perlmonks.org.ru

Оффлайн Slike

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
работа скрипта на сервере в бекграунде
« Ответ #4 : 01 Апреля 2005, 12:33:53 »
кстати, а как найти перловые процессы ?

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
работа скрипта на сервере в бекграунде
« Ответ #5 : 01 Апреля 2005, 13:42:50 »
ps awx | grep perl
The documentations is your friend

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28