Algo muy usual es la necesidad de ejecutar procesos, aplicaciones o servicios al inicio del SO. Cuando hablamos de "inicio" vamos a ver tres instancias:

  • Al abrir un shell
  • Al inicio de una sesión X
  • Al inicio del sistema

Al abrir un shell

Para un shell bash, hay que crear o modificar el archivo $HOME/.bashrc. Por ejemplo:

touch $HOME/.bashrc
chmod 700 $HOME/.bashrc
nano $HOME/.bashrc

Luego, en el archivo escribir:

#!/bin/bash
echo "Hola, $USER. $HOSTNAME es todo tuyo!!!"

Al inicio de una sesión X

  • Gnome: la solapa "Programas al inicio" de la ventana de Preferencias de Sesión (Sistema -> Preferencias -> Sesiones) hacer clic sobre Añadir.

  • KDE: basta con crear un link al programa en que deseas iniciar en $HOME/.kde/Autostart/

Al inicio del sistema

Para ejecutar, por ejemplo, un demonio al inicio debes crear un script en /etc/init.d/mi_demonio. El propietario del script debe ser root y necesita de permisos de ejecución.

Luego, es necesario crear un link simbólico en el runlevel que interese, en este caso el 2 que es el nivel multiusuario.

ln -s /etc/init.d/mi_demonio /etc/rc2.d/S80mi_demonio

La nomenclatura "S80mi_demonio" corresponde a:

  • S: se ejecute en el start del sistema
  • 99: orden de ejecución con respecto a los otros S
  • mi_demonio: nombre arbitrario que puede coincidir o no con el original del /etc/init.d

Vía: jmarior.net