mejor manera para desconectar usuarios remotos

Alvaro Herrera alvherre en alvh.no-ip.org
Lun Ene 26 15:50:42 CLST 2009


Victor Hugo dos Santos escribió:

> he probado el -HUP y realmente desconecta a los usuarios remotos..
> pero la verdad es que en este caso no entiendo por que se usa el HUP.

HUP viene de "hang up", que es la expresión que los gringos usan para
colgar el teléfono.  La analogía es obvia: si estás corriendo un
intérprete en un servidor remoto y "cuelgas", obviamente lo que tiene
que pasar es que el intérprete se cierre (para terminar la conexión).
Además, el intérprete propaga la señal a sus procesos hijos.

El que SIGHUP se use para indicar otra cosa es una reliquia histórica;
como obviamente no tiene sentido pedirle a un daemon que "cuelgue la
conexión" (dado que la idea era que siguiera funcionando), se puede
reciclar la señal para el significado "releer los archivos de
configuración" que no tenía señal propia.  Es más; es muy conveniente
usarla para este significado, porque si echas a andar un proceso
cualquiera y luego cierras el terminal, el proceso se muere; pero si
este proceso está pensado para mantenerse vivo después del cierre,
entonces nada mejor que darle un uso que sea "inocuo".

Mira las primeras 15 señales: HUP, INT, QUIT, ILL, TRAP, ABRT, BUS, FPE,
KILL, USR1, SEGV, USR2, PIPE, ALRM, TERM ... ya están todos los posibles
significados usados, el único que es susceptible de reciclarse es HUP.
(El valor 0 por alguna razón no tiene nombre, pero tiene sus propios
usos).

-- 
Alvaro Herrera                 http://www.amazon.com/gp/registry/DXLWNGRJD34J
"Cuando miro a alguien, más me atrae cómo cambia que quién es" (J. Binoche)


Más información sobre la lista de distribución Linux