Você testa em qual nível de execução sua máquina normalmente inicia.
runlevel
Geralmente, são 5 ou 2 - existem várias convenções, mas nada realmente estabelecido. O Ubuntu usa 2, enquanto a distribuição anterior eu costumava usar sempre
- 1 usuário único (superusuário)
- 2 multiusuário
- 3 multiusuário + rede
- 4 não utilizado / definível pelo usuário
- 5 multiusuário, rede + X11
Então você cria um link simbólico a partir do seu script init, talvez /etc/init.d/foobar
para/etc/rc2.d/SXYfoobar
S significa 'Inicie este script neste nível de execução (aqui: 2). XY é um número decimal de dois dígitos, relevante para a sequência, os scripts são iniciados.
Se você depende do script S45barfoo para ser executado antes de você, e o S55foofoo depende do seu script, escolha xy entre 45 e 55. Para números iguais, a ordem de inicialização é indefinida.
Enquanto isso, o Ubuntu mudou (está alternando) para outro procedimento de inicialização, chamado upstart
.
E observe: nem sempre os links apontam para /etc/rcX.d
- às vezes é /etc/init/rcX.d
ou algo semelhante, mas deve ser fácil de encontrar, em algum lugar abaixo de / etc.
Se você deseja iniciar algo no final dos scripts de inicialização, /etc/rc.local
seria um arquivo a procurar, mas, se o X11 já estiver em execução, poderá procurar uma opção de inicialização automática do ambiente da área de trabalho ou /etc/X11/Xsession.d/
com um padrão semelhante ao descrito acima.
Se você depende da rede estar ativa, existe um diretório separado (if-up.d) e para dispositivos montados, como unidades USB externas /etc/udev/rules.d/
.
/etc/init
,/etc/init.d
,/etc/rc.d
,/etc/rc.local
e um pouco mais que isso tem?