Apaga que nos vamos

Menos mal que en los malos momentos siempre hay algo en lo que confiar, y en este caso el servidor que mueve blackshell es lo suficientemente rock solid como para que no le tenga que prestar atención.

El otro día arrancaba un Tomcat desde el cron(8) de un usuario sin privilegios (vía @reboot). Ante la pregunta de ¿y al apagar el sistema? Bueno, se supone que todos los servicios saben manejar un SIGTERM en condiciones (la señal que envía init(8) a los procesos cuando se acaba la fiesta).

Supongamos que nos encontramos con un servicio que mejor lo bajamos en condiciones, ¿cómo lo haríamos con el sistema de scripts RC de OpenBSD?

Recordemos que los servicios se arrancan añadiendo el código shell adecuado en /etc/rc.local (un ejemplo: arrancando MySQL). Pero ese código solo se ejecuta al poner la máquina en marcha (no hay posibilidad de pasar argumentos como start / stop que soportan otros sistemas).

Tenemos otro fichero RC para solucionar este problema: /etc/rc.shutdown. Este fichero es únicamente para código del administrador. Por ejemplo:

código shell
(...blah blah...)
#
# Your shell code goes here
#
 
/usr/sbin/apachectl stop
/usr/local/bin/mysqladmin -u root -h localhost --password=passwd shutdown

Detenemos el servidor web y el servidor de bases de datos. Lo único que hay que tener en cuenta, en este caso, es que la contraseña de root para MySQL podría ser leída por usuarios no autorizados, así que habrá que ajustar los permisos de lectura del fichero.

Es realmente fácil, pero apuesto a que en la práctica la mayoría de los administradores confían en una adecuada gestión de SIGTERM. Otra cuestión sería cuántos de esos administradores lo hacen conscientemente ;).



Publicidad

Aviso: Los siguientes comentarios pertenecen a las personas que los han enviado.
El administrador de este sitio web no es responsable de los mismos.

[comentarios] Hay 1 comentario:

Gravatar
20/02/2006 10:36:26
Declaración
por r0sk (IP: 217.130.44.*)
Comentario de r0sk
Soy un inconsciente ;). Sin embargo habría que confiar en que todos los servicios sepan lo que es un SIGTERM.

! Esta entrada no permite nuevos comentarios.

Los comentarios se bloquean automáticamente tras 15 días desde la publicación del artículo.

Si deseas comentar algo relacionado con el texto, puedes enviarme un e-mail.