Skip site navigation (1) Skip section navigation (2)

Re: Tareas en segundo plano

From: Juan <smalltalker(dot)marcelo(at)gmail(dot)com>
To: Jorge Servan <jservan(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Tareas en segundo plano
Date: 2011-09-20 21:51:08
Message-ID: CAKizN9yad-REoeGW2CO6zvd1caELn5hgRUDDXHxVstkZ65+JGA@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Considero muy superior el screenn podes retomar la consola cuando quieras (
caso de que haya errores en consola ). y desde cualquier lugar via ssh
putty.
salu2
mdc


2011/9/20 Jorge Servan <jservan(at)gmail(dot)com>

> Si estuvieras en Linux, bastaría con anteponer a la orden que deseas
> ejecutar en segundo plano con el programa "nohup".
> Continuando con el jemplo:
> nohup psql -U user -c "select * from pepe " basededatos &
>
> Este programa, que suele ser un script sh, configura la señal SIGHUP para
> ignorarla. Esta señal es normalmente recibida por todo proceso cuando la
> terminal de control asociada. Se le puede indicar al Sistema Operativo que
> ignore la señal, pero lo normal es no indicarlo. Dado que lo normal es
> dejarla por defecto, y su acción por defecto es finalizar el programa,
> entonces se obtiene que por defecto se cerrarán todos los programas que has
> lanzado bajo una terminal. Para evitar el efecto, sin alterar el programa,
> se emplea el programa "nohup". "nohup" configura la señal para ser ignorada
> en el shell antes de la ejecución de la orden. Todas las órdenes que se
> lancen heredarán el estado de la señal.
>
> Indicar por último que la salidas del programa, a menos que se redirijan a
> otro fichero, se volcarán sobre un fichero denominado nohup.out, que se
> creará en el directorio actual desde donde se lanzo la orden.
>
> Espero haber aportado un granito de arena.
>
> se puede bien, alterar el programa (programanado o configurándolo) o bien
> hacer que el proceso padre, que el programa las órdenes que se desean
> lanzar, sean lanzadas  bajo un shell que ignora
>  lo lance tenga ya configurado
>
> El 20 de septiembre de 2011 22:46, Espartano <espartano(dot)mail(at)gmail(dot)com>escribió:
>
>> 2011/9/20 Juan <smalltalker(dot)marcelo(at)gmail(dot)com>:
>> > Hola
>> >
>> > Te expando la idea anterior que esta bien,
>> > Linux si es que trabajas en linux tiene la capacidad de mandar tareas
>> > encolando procesos en lo que se podria llamar background.
>> >
>> > basicamente cualquier comando al shell terminado con & se procesa en
>> > background
>> > (devuelve el control para el sig comando instantaneamente aunque el
>> comando
>> > tarde semanas).
>> > entonces deberias
>> >
>> > psql -U user -c "select * from pepe " basededatos &
>> > y listo!!
>> > salu2
>> > dmc
>> >
>>
>> El tema es que para algunas versiones de Unix (no recuerdo si es el
>> caso de linux) se mantiene un id de session, aparte del id del proceso
>> (PID), id del grupo (GID), etc, etc, entonces cuando cierras tu
>> terminal como el id de session esta ligado a ella, los procesos hijos
>> de ese ID de session mueren, te repito no se si es el caso de linux,
>> tendrían que comprobar antes de lanzar en background un proceso y
>> esperar a que se este ejecutando por días.
>> -
>> Enviado a la lista de correo pgsql-es-ayuda (
>> pgsql-es-ayuda(at)postgresql(dot)org)
>> Para cambiar tu suscripción:
>> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>>
>
>

In response to

pgsql-es-ayuda by date

Next:From: Martin Li CausiDate: 2011-09-20 22:27:18
Subject: Re: Error en la replicacion con streaming
Previous:From: Jorge ServanDate: 2011-09-20 21:16:12
Subject: Re: Tareas en segundo plano

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group