Gestionar servicio mediante niveles de ejecución.
El nivel por defecto en un servidor Debian es el nivel 2, será conservado como nivel por defecto y personalizar el nivel 3 para que la aplicación se inicie automáticamente.
Crear directorio scripts.
# mkdir /opt/scripts
# vim /opt/scripts/memoria
#!/bin/bash while true do hora=$(date "+%H: %M: %S - ") echo -n $hora >> /var/log/memoria.log grep Dirty /proc/meminfo >> /var/log/memoria.log sleep 25 done
Permisos de ejecución a la aplicación:
# chmod +x /opt/scripts/memoria
# ls -l /opt/scripts/memoria
-rwxr-xr-x 1 root root 162 2012-08-08 09:53 /opt/scripts/memoria
Creación del script de inicio personalizado (archivo de gestión del servicio):
# vim /etc/init.d/memoria
#!/bin/bash
case $1 in
start)
/opt/scripts/memoria & echo " * inicializando... ;; stop) pkill memoria ;; esac
Hacer archivo ejecutable.
# chmod +x /etc/init.d/memoria
Comprobar el funcionamiento del programa ejecutando el correspondiente servicio:
# /etc/init.d/memoria start
* inicializando...
Contenido del archivo /var/log/memoria.log
# tail -f /var/log/memoria.log
09: 57: 16 -Dirty: 44 kB 09: 57: 41 -Dirty: 156 kB 09: 58: 06 -Dirty: 168 kB 09: 58: 31 -Dirty: 332 kB 09: 58: 56 -Dirty: 164 kB 09: 59: 21 -Dirty: 376 kB 09: 59: 46 -Dirty: 140 kB 10: 00: 11 -Dirty: 148 kB 10: 00: 36 -Dirty: 248 kB 10: 01: 01 -Dirty: 12 kB
# pgrep -l memoria
10095 memoria
# /etc/init.d/memoria stop
# pgrep -l memoria
#
Modificar nivel personalizado:
Crear un enlace de parada en el nivel 0
Crear enlace de parada en el nivel 1
Crear enlace de parada en el nivel 2
Crear enlace de inicio en el nivel 3 (nivel funcional completo con la aplicación memoria)
Crear enlace de parada en el nivel 6
root@zeus:/etc/rc0.d# ln -s ../init.d/memoria K05memoria root@zeus:/etc/rc0.d# ls -l K05memoria lrwxrwxrwx 1 root root 17 2012-08-08 11:45 K05memoria -> ../init.d/memoria root@zeus:/etc/rc0.d# cd ../rc1.d/ root@zeus:/etc/rc1.d# ln -s ../init.d/memoria K05memoria root@zeus:/etc/rc1.d# ls -l K05memoria lrwxrwxrwx 1 root root 17 2012-08-08 11:45 K05memoria -> ../init.d/memoria root@zeus:/etc/rc1.d# cd ../rc2.d/ root@zeus:/etc/rc2.d# ln -s ../init.d/memoria K05memoria root@zeus:/etc/rc2.d# ls -l K05memoria lrwxrwxrwx 1 root root 17 2012-08-08 11:46 K05memoria -> ../init.d/memoria root@zeus:/etc/rc2.d# cd ../rc3.d/ root@zeus:/etc/rc3.d# ln -s ../init.d/memoria S95memoria root@zeus:/etc/rc3.d# ls -l S95memoria lrwxrwxrwx 1 root root 17 2012-08-08 11:47 S95memoria -> ../init.d/memoria root@zeus:/etc/rc3.d# cd ../rc4.d/ root@zeus:/etc/rc4.d# ln -s ../init.d/memoria K05memoria root@zeus:/etc/rc4.d# ls -l K05memoria lrwxrwxrwx 1 root root 17 2012-08-08 11:49 K05memoria -> ../init.d/memoria root@zeus:/etc/rc4.d# cd ../rc5.d/ root@zeus:/etc/rc5.d# ln -s ../init.d/memoria K05memoria root@zeus:/etc/rc5.d# ls -l K05memoria lrwxrwxrwx 1 root root 17 2012-08-08 11:49 K05memoria -> ../init.d/memoria root@zeus:/etc/rc5.d# cd ../rc6.d/ root@zeus:/etc/rc6.d# ln -s ../init.d/memoria K05memoria root@zeus:/etc/rc6.d# ls -l K05memoria lrwxrwxrwx 1 root root 17 2012-08-08 11:49 K05memoria -> ../init.d/memoria root@zeus:/etc/rc6.d#
Linux es genial!.
No hay comentarios:
Publicar un comentario