[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Duda sobre nohup



El Martes, 25 de Abril de 2006 00:03, Angel Claudio Alvarez escribió:
> El lun, 24-04-2006 a las 23:38 +0200, Iñaki escribió:
> > Hola, hoy he tenido un problema inesperado con un servidor de correo.
> > Resulta que en ocasiones debe llamar a un programa externo el cuál a su
> > vez llama a un script.
> >
> > El problema es que el servidor de correo interrumpe el programa externo
> > si no ha terminado en 2 minutos, circunstancia que no contemplaba como
> > posible pero que por desgracia sí ocurre en ocasiones.
> >
> > Necesito que el script que ejecuta el programa externo acabe como sea,
> > aunque le lleve más de 2 minutos.
>
> yo utilizaria perl, forkeo un proceso y le meto un tiempo de espera, si
> se alcanza el maximo ( digamos 110 segundos) salgo con codigo de error

El caso es que no hay nada de malo si el script tarda más de 2 minutos, puede 
ocurrir perfectamente (depende del tráfico de subida). De todas formas lo de 
Perl... sé que existe y eso...   ;)


> > Yo no puedo alterar cómo el servidor de correo llama al programa externo
> > pero sí cómo ese programa externo llama al script (pues el programa es un
> > código BASH).
> >
> >
> >
> > Había pensado en hacer la llamada al script así:
> >
> >   nohup script &
> >
> > ya que según he leído en el manual de "nohup" de esta forma el script se
> > ejecuta hasta el final a pesar de que su proceso padre muera e incluso a
> > pesar de que reciba señales de "hangup".
> >
> > Desgraciadamente no sé qué garantías me ofrece esto (la documentación es
> > terriblemente escasa) y me gustaría saber si realmente esto funciona así
> > el 100% de los casos y si se garantiza que el script llamado con "nohup"
> > finalice aunque el programa externo sea matado por el servidor de correo
> > a los 2 minutos.
>
> nohup lanza un proceso independiente
> El script no terminara  nunca si entra en un loop, por lo tanto no te
> garantizara que termine

Ok, viene bien saberlo. No obstante el script sólo lee un fichero con un sed y 
lo manda por entrada estándar a un comando "sendEmail" que lo envía al SMTP 
correspondiente. No se me ocurre que pueda ocurrir ningún loop (espero).



Gracias y un saludo.


-- 
intentando mejorar Konqueror:
  http://konqueror4.linuxdevel.net

y si te gusta puedes votar:    ;)
  http://www.kde-look.org/content/show.php?content=36385




Reply to: