quarta-feira, 2 de outubro de 2013

O PROCESSO INIT NO LINUX

O init é sem dúvida o principal processo para a operação do sistema Linux, pois ele é o primeiro a ser executado, logo após o carregamento do Kernel na memória. Sua função é controlar todos os outros processos que são executados no computador.

Podemos visualizar o init “trabalhando”, através do seguinte comando:

“ps -C init“
Lembrete: o Linux diferencia letras maiúsculas de minúsculas.

A opção -C mostra todos os processos que estão sendo controlados pelo init com seus respectivos PID`s (Identificação do processo) e podemos verificar que o init vai ter uma identificação de número 1.
Quando o Kernel inicializa, ele procura o init em sua pasta nativa ( /sbin/init) para executar, mas dependendo da distribuição, o local pode mudar para a pasta /bin/sh.

Configurando o init
Quando o init é inicializado, ele vai ler o arquivo de configuração /etc/inittab, fica executando até o momento do computador ser desligado ou reiniciado, mas não é lido novamente. É possível forçar a leitura do arquivo novamente com o comando:
# kill -HUP 1


Esse comando manda um sinal para o processo de PID 1 (init) para reiniciar e ele reinicia e o arquivo é lido novamente.
Vamos iniciar a configuração do arquivo através da linha do getty (Processo que autoriza o login do usuário). Existem 4 pontos que devemos configurar:
  • ID = Nível de ação do processo, que determina em qual terminal o usuário está executando. 
  • Nível= Mostra o nível de execução do processo, se ele pode ser executado em primeiro ou segundo plano. 
  • Ação = Define o que o processo vai fazer e quantas vezes será executado. 
  • Processo = É o processo propriamente dito, com todos os seus argumentos. 
Podemos notar que no Linux existem 6 terminais diferentes (tty1 a tty6). Cada terminal tem o poder de executar uma tarefa diferente e até mesmo com usuários diferentes. Caso o usuário tenha conhecimento, pode acrescentar novos terminais, pois o Linux aceita até 24.

A configuração do init tab permite a configuração de algumas funcionalidades especiais e ações diferenciadas, definidas através de palavras chaves, que adicionamos no terceiro campo do arquivo. Exemplos:
powerwait: Permite que o init encerre o sistema na falta de energia elétrica, como a utilização de um no-break.
ctrlaltdel: Permite que o usuário reinicie o sistema, utilizando apenas as teclas CTRL+ALT+DEL.
sysinit: Pode por exemplo limpar a pasta /tmp, que muitas vezes não é limpa nem mesmo com a reinicialização do sistema.

MODO MONOUSUÁRIO
O monousuário é um modo de execução muito útil, pois podemos configurar uma máquina para que somente o administrador possa acessar. Um servidor, por exemplo, pois quando esse modo é habilitado, um número baixíssimo de processos são iniciados, facilitando a performance do sistema.
Um sistema comum pode mudar para monousuário com o comando “telinit”, reinicia o sistema e informa ao init que o monousuário está habilitado, através da palavra emergecy na linha do Kernel. Como apenas o administrador pode logar é solicitado o login de root, antes de iniciar o interpretador de comando.
Related Posts Plugin for WordPress, Blogger...