Usted prueba, en qué nivel de ejecución normalmente comienza su máquina.
runlevel
A menudo esto es 5 o 2, hay varias convenciones, pero nada realmente establecido, afaik. Ubuntu usa 2, mientras que la distribución anterior que usaba siempre usaba
- 1 usuario individual (superusuario)
- 2 multiusuario
- 3 multiusuario + red
- 4 no utilizado / definible por el usuario
- 5 multiusuario, red + X11
Luego haces un enlace simbólico desde tu script de inicio, tal vez /etc/init.d/foobar
para/etc/rc2.d/SXYfoobar
S significa 'Iniciar este script en este nivel de ejecución (aquí: 2). XY es un número decimal de dos dígitos, que es relevante para la secuencia, se inician los scripts.
Si depende de que el script S45barfoo se ejecute antes que usted, y S55foofoo depende de su script, elegiría xy entre 45 y 55. Para números iguales, el orden de arranque no está definido.
Mientras tanto, Ubuntu cambió (está cambiando) a otro procedimiento de inicio, llamado upstart
.
Y tenga en cuenta: no siempre los enlaces enlazan a /etc/rcX.d
veces, es /etc/init/rcX.d
algo similar, pero debería ser fácil de encontrar, en algún lugar debajo de / etc.
Si desea iniciar algo al final de los scripts de inicio, /etc/rc.local
sería un archivo para buscar, pero si depende de que X11 ya se esté ejecutando, puede buscar una opción de inicio automático de su entorno de escritorio, o /etc/X11/Xsession.d/
con un patrón similar al descrito encima.
Si depende de que la red esté activa, hay un directorio separado (if-up.d) y para dispositivos montados como unidades USB externas /etc/udev/rules.d/
.
/etc/init
,/etc/init.d
,/etc/rc.d
,/etc/rc.local
y algunos más tiene?