Aquí está el extracto de http://www.debian-administration.org/articles/28 que parece responder a su pregunta.
Nota: En el siguiente script de ejemplo, simplemente agregue una llamada a la start)
sección " " para iniciar realmente su programa. Puede probar la funcionalidad del script sin reiniciar el sistema: llámelo con la ruta completa y proporcione un parámetro de " start
" o " stop
"
Aquí va:
Debian utiliza un sistema de inicio tipo Sys-V para ejecutar comandos cuando cambia el nivel de ejecución del sistema, por ejemplo, en el momento del arranque y el apagado.
Si desea agregar un nuevo servicio para comenzar cuando la máquina se inicia, debe agregar el script necesario al directorio /etc/init.d/
. Muchos de los scripts ya presentes en ese directorio le darán un ejemplo del tipo de cosas que puede hacer.
Aquí hay un script muy simple que se divide en dos partes, el código que siempre se ejecuta y el código que se ejecuta cuando se llama con "inicio" o "detención".
#! /bin/sh
# /etc/init.d/blah
#
# Some things that run always
touch /var/lock/blah
# Carry out specific functions when asked to by the system
case "$1" in
start)
echo "Starting script blah "
echo "Could do more here"
;;
stop)
echo "Stopping script blah"
echo "Could do more here"
;;
*)
echo "Usage: /etc/init.d/blah {start|stop}"
exit 1
;;
esac
exit 0
Una vez que haya guardado su archivo en la ubicación correcta, asegúrese de que sea ejecutable ejecutando " chmod 755 /etc/init.d/blah
".
Luego, debe agregar los enlaces simbólicos apropiados para que el script se ejecute cuando el sistema se caiga o se active.
La forma más sencilla de hacerlo es usar el comando específico de Debian update-rc.d
:
root@skx:~# update-rc.d blah defaults
Adding system startup for /etc/init.d/blah ...
/etc/rc0.d/K20blah -> ../init.d/blah
/etc/rc1.d/K20blah -> ../init.d/blah
/etc/rc6.d/K20blah -> ../init.d/blah
/etc/rc2.d/S20blah -> ../init.d/blah
/etc/rc3.d/S20blah -> ../init.d/blah
/etc/rc4.d/S20blah -> ../init.d/blah
/etc/rc5.d/S20blah -> ../init.d/blah
start-stop-daemon
maneja mejor (aunque es preferible que el programa mismo demonice). ¿Qué distro está usando? Fuera de los tipos MIME de escritorio, las extensiones de archivo no tienen sentido en * nix y se prefiere que los ejecutables no tengan uno.