Os Níveis de execução (run levels) são diferentes modos de
funcionamento do GNU/Linux com programas, daemons e recursos
específicos. Em geral, os sistemas GNU/Linux possuem sete
níveis de execução numerados de 0 a 6. O daemon init é o
primeiro programa executado no GNU/Linux (veja através do
ps ax|grep init
) e responsável pela carga de todos daemons
de inicialização e configuração do sistema.
O nível de execução padrão em uma distribuição GNU/Linux é
definido através do arquivo de configuração do
/etc/inittab
(“Arquivo /etc/inittab
”) através da
linha
id:2:initdefault:
Os nível de execução atual do sistema pode ser visualizado através do comando
runlevel e modificado através dos programas
init ou telinit. Quando é executado, o
runlevel lê o arquivo /var/run/utmp
e
adicionalmente lista o nível de execução anterior ou a letra
N
em seu lugar (caso ainda não tenha ocorrido a mudança do
nível de execução do sistema).
Na Debian, os diretórios /etc/rc0.d
a
/etc/rc6.d
contém os links simbólicos para arquivos em
/etc/init.d
que são acionados pelo nível de execução
correspondente.
Por exemplo, o arquivo S10sysklogd
em
/etc/rc2.d
, é um link simbólico para
/etc/init.d/sysklogd
.
O que aconteceria se você removesse o arquivo
/etc/rc2.d/S10sysklogd
? Simplesmente o daemon
sysklogd deixaria de ser executado no nível de execução 2 do
sistema (que é o padrão da Debian).
A Debian segue o seguinte padrão para definir se um link
simbólico em /etc/rc[0-6].d
iniciará ou interromperá a
execução de um serviço em /etc/init.d
, que é o seguinte:
Se um link é iniciado com a letra K
(kill), quer dizer que o
serviço será interrompido naquele nível de execução. O que ele faz é executar
o daemon em /etc/init.d
seguido de
stop
.
Se um link é iniciado com a letra S
(start), quer dizer que
o serviço será iniciado naquele nível de execução (é equivalente a executar o
daemon seguido de start
).
Primeiro os links com a letra K
são executado e depois os
S
. A ordem que os links são executados dependem do valor
numérico que acompanha o link, por exemplo, os seguintes arquivos são
executados em seqüência:
S10sysklogd S12kerneld S20inetd S20linuxlogo S20logoutd S20lprng S89cron S99xdm
Note que os arquivos que iniciam com o mesmo número (S20*
)
são executados alfabeticamente. O nível de execução do sistema pode ser
modificado usando-se o comando init ou
telinit. Os seguinte níveis de execução estão disponíveis
na Debian:
0
- Interrompe a execução do sistema. todos os programas e
daemons finalizados. É acionado pelo comando shutdown -h
1
- Modo monousuário, útil para manutenção dos sistema.
2
- Modo multiusuário (padrão da Debian)
3
- Modo multiusuário
4
- Modo multiusuário
5
- Modo multiusuário com login gráfico
6
- Reinicialização do sistema. Todos os programas e
daemons são encerrados e o sistema é reiniciado. É acionado pelo comando
shutdown -r
e o pressionamento de
CTRL
+ALT
+DEL
.
Por exemplo, para listar o nível de execução atual do sistema digite:
runlevel
. O runlevel deverá listar algo
como:
N 2
Agora para mudar para o nível de execução 1, digite: init 3
.
Agora confira a mudança digitando: runlevel
. Você deverá
ver este resultado:
2 3
Isto quer dizer que o nível de execução anterior era o 2
e o
atual é o 3
.
Copyright © 1999-2020 - Gleydson Mazioli da Silva