No post anterior, falei sobre os níveis de inicialização do Linux; aqui, vou falar sobre o arquivo /etc/inittab, que é o responsável por definir o nível de execução (runlevel) que o Linux vai iniciar e a sequência de scripts que serão executados para inicializar os serviços.
Primeira coisa, mesmo que a gente não venha trocar uma linha… vamos fazer um backup do arquivo; afinal de contas, ‘abençoados sejam os pessimistas, pois eles fizeram bekapi’:
# cd /etc/
# cp inittab /root/bekapi/
`inittab’ -> `/root/bekapi/inittab’
Agora sim, podemos editar o arquivo:
# vi inittab
A primeira linha importante é essa:
id:2:initdefault:
Essa linha, pessoas indica qual o runlevel padrão o sistema vai iniciar! Então, se quero trocar o nível, é aqui que vou mexer! Só por favor não incluam ai o nível 0 ou 6… rs senão o sistema vai ligar e desligar eternamente!
si::sysinit:/etc/init.d/rcS
A linha acima, chama o script que irá iniciar todos scripts que iniciam em ‘S’ no /etc/rcS.d.
~~:S:wait:/sbin/sulogin
Essa linha, chama o comando sulogin, que é utilizado pelo sistema para entrar em modo monousuário (single). Quando o sulogin é invocado, o seguinte prompt é exibido:
Give root password for maintenance
(or type Control-D to continue):
Essa mensagem costuma aparecer quando o sistema está iniciando e acontece algum problema… daí, você tem a opção de fornecer a senha de root prá consertar o sistema, ou então, teclar CTRL+D para continuar.
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
As linhas acima indicam os níveis de inicialização que vimos anteriormente! E aqui, indica o nível e os diretórios que serão acessados (aqueles rc?.d, lembram?).
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
Essa linha executa uma ação para a combinação das teclas CTRL+ALT+DEL.
Os números 12345 indicam que a ação será executada nesses níves. Por padrão, essa combinação executa o reboot da máquina (/sbin/shutdown -t1 -a -r now).
Então, se a gente for pensar em segurança, pode apagar essa linha, comentar (colocar o sinal ‘#’ sem as aspas na frente da linha), ou ainda executar um comando… Aqui na minha máquina, troquei a linha para:
ca:12345:ctrlaltdel:/bin/echo “Voce teclou CTRL + ALT + DEL”
Daí, toda vez que eu uso a combinação CTRL+ALT+DEL, aparece: “Voce teclou CTRL+ALT+DEL”. Chique no úrtimo, esse tal de comando echo
!
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
As linhas acima indicam chamadas do console para login em modo texto… são os terminais que acessamos com as teclas CTRL+ALT+F1, CTRL+ALT+F2…
E assim vai até o 6. As linhas acima, indicam que esses terminais estão liberados para uso! Ou seja, é logar e usar o shell!
Para desabilitar, basta comentar as linhas que deseja desabilitar; lembrando que não se deve comentar todas… pelo menos dois terminais devem ficar ativos… que aí, um você usa no modo texto, e outro é usado pela interface gráfica, caso esteja configurada.
Bem, depois de fazer todas mudanças no arquivo, é hora de salvar o arquivo e atualizar as configurações. Para isso:
# init q
A opção ‘q‘ diz ao init para reler o inittab! Assim, as mudanças são feitas sem a necessidade de reiniciar a máquina, uma vez que o inittab é lido no momento da inicialização.
É importante falar que o comando init não é utilizado somente para atualizar o arquivo… ele também pode ser utilizado para mudar o nível. Por exemplo:
# init 1
Esse comando desloga do terminal e invoca o sulogin, onde você pode informar a senha – ai entra no modo monousário; ou então tecla CTRL+D para iniciar no runlevel padrão.
Bem, é isso aí pessoal… até o próximo post!