Otra forma típica de iniciar algo en el arranque en muchas plataformas * nix es (o creo que esto puede estar empezando a perder el favor: ver alternativas ) para colocar scripts en un directorio que, dependiendo del sistema operativo / distribución particular, podría ser algo así como /etc/rc2.d
, /etc/rc3.d
, /etc/rc/rc3.d
, o similares (diferentes distribuciones usan diferentes "niveles de ejecución", que es donde el número proviene de - ver el enlace más abajo). Con frecuencia, estos también están enlazados simbólicamente en o desde archivos /etc/init.d
, para una ejecución más fácil a mano, y toman un argumento de "inicio" y / o "detención" en la mayoría de las plataformas * nix, y también "estado", "reinicio", etc. en muchas plataformas de Linux. En tales sistemas, estos generalmente son ejecutados por init
,inittab
. En los sistemas * BSD, hay un estilo diferente de un concepto similar y, como se vincula anteriormente, hay muchas variaciones.
En el estilo anterior, los scripts en, por ejemplo, /etc/rc2.d
(para un sistema con un nivel de ejecución predeterminado de 2) generalmente comienzan con la letra S
o K
, y luego con un número de dos dígitos. Las secuencias de comandos que comienzan con S se ejecutan en orden lexicográfico (que se traduce, generalmente, en orden numérico) al arrancar, en el nivel 2, con un argumento de "inicio". Al cerrar, los scripts con el prefijo K se ejecutan de manera similar, con un argumento de "stop".
Los archivos en /etc/init.d
(o algunas veces /etc/rc/init.d
, u otras variaciones) se nombran sin los prefijos S y K, o los números numéricos. Típicamente, los archivos en los diversos directorios /etc/rc?.d enlazan simbólicamente a los archivos reales, a menudo referenciados a través del prefijo de ruta relativa ../init.d/
.
Existen varias utilidades en varios sistemas para administrar esto, también, encender y apagar cosas, etc. En IRIX (desde IRIX 4, al menos, si mi memoria funciona), solía ser una herramienta llamada chkconfig
, que no manipula los enlaces, pero que serían revisados por los scripts para ver si deberían ejecutarse o no. Creo que IRIX fue el primer sistema operativo en tener algo como esto. Más tarde, en alguna versión de RedHat que solía tener, había una herramienta con el mismo nombre, pero se comportó de manera un poco diferente, en realidad administrando los enlaces simbólicos: vea chkconfig(8)
lo que creo que es la misma versión (o muy similar) como solía entonces
En un sistema Ubuntu 9.04 al que tengo acceso, parece que update-rc.d
es el script para ejecutar.
Si estás en un sistema que utiliza Inittab, también se puede añadir cosas directamente allí - que puede ser especialmente útil para las cosas que desea ejecutar no sólo una vez en el arranque, pero para tener un seguimiento activo (por init
) que respawn
si alguna vez chocar o terminar. Vea el resultado de man inittab
(si lo tiene) en su sistema para obtener información adicional. Y / o man init
, etc. Hay muchos sabores diferentes, y no estoy (actualmente) terriblemente familiarizado con Debian o Ubuntu, así que no estoy seguro exactamente a qué apuntarle, pero espero que esto le brinde algunos puntos de partida .
la sección @reboot en crontob es nueva para mí, pero también parece que podría ser una opción útil, aunque sugeriría que los guiones de inicio sean preferibles para muchas cosas. Pero vea man 5 crontab
mucha más información sobre lo que puede poner en su configuración cron, y cómo se le puede pedir que ejecute las cosas, y cuándo (incluyendo, asumiendo una versión Vixie / ISC de cron [vea el historial cron ] con @reboot
).
Espero que sea útil.