Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Alexandr S. Agranovsky               2:5020/400     12 Mar 2003  19:53:53
 To : Max Sivkov
 Subject : Re: Re: написать демона
 -------------------------------------------------------------------------------- 
 
 
 
   Hi, Max Sivkov
 
 MS> привет
 MS> ну еще не мешало бы от консоли его отрубить
 MS>    if (freopen("/dev/null", "r", stdin) == NULL) {
 MS> file://bug
 MS>     }
 MS>     if (freopen("/dev/null", "w", stdout) == NULL) {
 MS> file://bug
 
 MS>     }
 MS>     if (freopen("/dev/null", "w", stderr) == NULL) {
 MS> file://bug
 
 MS>     }
 
 А если у нас третий-четвертый-пятый дескриптор остался от
 предыдущего процесса?
 Вот полный текст минимально корректной демонизации:
 
     signal(SIGTTOU, SIG_IGN);       /* ignore terminal i/o signals */
     signal(SIGTTIN, SIG_IGN);
     signal(SIGTSTP, SIG_IGN);
     if (fork()!=0) exit(0); /* daemonization */
     setsid();
     getrlimit(RLIMIT_NOFILE, &flim); /* close all files */
     for (fd=0; fd<flim.rlim_max; fd++) /* maybe 16 will be enough? */
       close(fd);
     chdir("/");
 // при желании chdir("/tmp"); /* for some safety, do not remove the call above -
 if we don't have the /tmp directory? ;) */
         
     open("/dev/null", O_NOCTTY | O_NONBLOCK | O_RDONLY);
     open("/dev/null", O_NOCTTY | O_NONBLOCK | O_WRONLY);
     dup(1);
 
 - ---
 Alexandr S. Agranovsky llb@udmnet.ru
 --- ifmail v.2.15dev5
  * Origin: LLB, LLC (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 написать демона   Andrew V Scherbacov   11 Mar 2003 15:17:05 
 написать демона   Mishael Sibiryakov   11 Mar 2003 17:33:47 
 Re: написать демона   Alexandr S. Agranovsky   11 Mar 2003 17:14:25 
 написать демона   Mishael Sibiryakov   11 Mar 2003 21:12:02 
 Re: написать демона   Dmitri A. Martynoff   11 Mar 2003 19:49:41 
 написать демона   Mishael Sibiryakov   11 Mar 2003 23:06:33 
 написать демона   Andrew V Scherbacov   12 Mar 2003 12:46:14 
 написать демона   Mishael Sibiryakov   12 Mar 2003 12:31:08 
 написать демона   Serguei Khvatov   12 Mar 2003 13:52:33 
 Re: написать демона   Nick Gazaloff   12 Mar 2003 15:28:22 
 написать демона   Serguei Khvatov   12 Mar 2003 14:01:58 
 Re: написать демона   Alexandr S. Agranovsky   12 Mar 2003 19:39:34 
 Re: написать демона   Max Sivkov   12 Mar 2003 18:47:26 
 Re: Re: написать демона   Alexandr S. Agranovsky   12 Mar 2003 19:53:53 
 Re: написать демона   Andrey Sapozhnikov   12 Mar 2003 20:30:32 
 написать демона   ilya voronin   13 Mar 2003 05:48:20 
Архивное /ru.linux/36423cd5259f.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional