O programa INIT

O init é um dos programas absolutamente essenciais para a operação de um sistema Linux, mas que a maioria dos usuários pode ignorar. Uma boa distribuição Linux conterá a configuração de um init que funcionará com a maioria dos sistemas e não haverá necessidade de se fazer absolutamente nada. Porém aqui apresento informações aos que gostam de conhecer melhor sobre o S.O.

[ Hits: 63.071 ]

Por: Adriano Boer em 21/02/2009


Níveis de execução



Nível de execução é o estado do init e de todo o sistema que define que serviços estarão operacionais. Eles são identificados por números, de acordo com a tabela do INIT. Não há nenhum consenso de como utilizar os níveis definidos para usuário (de 2 a 5).

Alguns administradores de sistema utilizam os níveis de execução para definir quais subsistemas serão executados, por exemplo, se o X estará disponível ou as funcionalidades de rede e assim por diante.

Outros tem todos os subsistemas sendo ativados e sendo finalizados individualmente, sem mudar o nível de execução, já que este pode ser um pouco complexo para controlar seus sistemas. Cada administrador deve definir qual o método mais adequado às suas necessidades, porém seguir a forma definida pela distribuição em uso deve ser o meio mais simples.

   Nível	Descrição
   0	        Desligar
   1	        Mono-usuário
   2	        Multiusuário, sem NFS
   3	        Multiusuário completo
   4     	Não usado
   5   		X11
   6   		Reinicializar

Níveis de execução são configurados no /etc/inittab por linhas como a seguinte:

I2:2:wait:/etc/rc.d/rc 2

O primeiro campo é um rótulo arbitrário; o segundo significa que ele se aplica ao nível de execução 2. O terceiro significa que o init deve executar o comando contido no quarto campo uma única vez, quando o sistema entrar neste nível, e que o init deve aguardar que ele seja concluído. O /etc/rc.d/rc executa todos comandos necessários para iniciar e parar os serviços previstos para o nível 2.

O comando no quarto campo executa todo o trabalho duro de configurar um nível de execução. Ele inicia os serviços que ainda não estejam sendo executados e finaliza os serviços que não devem rodar neste nível. Exatamente qual o comando a ser utilizado ou como o nível está configurado depende de cada distribuição do Linux.

Quando o init é iniciado, ele procura por uma linha no /etc/inittab que especifique o nível de execução padrão:

id:3:initdefault:

Podemos informar ao init para iniciar o sistema em um outro nível de execução, passando ao kernel argumentos como single ou emergency. Isso permite escolher o modo mono-usuário. Enquanto o sistema está sendo executado o comando telinit pode mudar o modo de execução, o que faz com que o init execute o comando apropriado definido no /etc/inittab.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução ao INIT
   2. Configuração do INIT
   3. Níveis de execução
   4. Configurações iniciais no /etc/inittab
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

VNC no GNU/Linux

Projeto OpenFarm

Sobre a aceitação do Software Livre no mercado

Corel Draw - Codeweavers - CrossOver Linux

Formatando fontes no openoffice

  
Comentários
[1] Comentário enviado por pogo em 21/02/2009 - 14:20h

excelente texto, parabéns!
isso também é muito útil para quem vai fazer a LPI... =)

[2] Comentário enviado por cassimirinho em 21/02/2009 - 21:19h

Como faço para editar no ubuntu? (já que o inittab não existe neste diretório)

Minha máquina é um pouco limita de hardware(processamento) e gostaria de dar uma otimizada e eliminando recursos que não tenho e não preciso utilizar. Segue o /etc/init.d/
acpid glibc.sh mysql-ndb-mgm stop-bootlogd
acpi-support hal networking stop-bootlogd-single
alsa-utils halt pcmciautils stop-readahead
anacron hostname.sh policykit sysklogd
apache2 hotkey-setup powernowd system-tools-backends
apmd hwclockfirst.sh powernowd.early udev
apparmor hwclock.sh pppd-dns udev-finish
apport keyboard-setup procps ufw
atd killprocs pulseaudio uml-utilities
avahi-daemon klogd rc umountfs
binfmt-support laptop-mode rc.local umountnfs.sh
bluetooth linux-restricted-modules-common rcS umountroot
bootlogd loopback readahead urandom
bootmisc.sh module-init-tools readahead-desktop usplash
checkfs.sh mountall-bootclean.sh README vbesave
checkroot.sh mountall.sh reboot vboxdrv
console-screen.kbd.sh mountdevsubfs.sh rmnologin virtualbox-ose
console-setup mountkernfs.sh rsync winbind
cron mountnfs-bootclean.sh samba wpa-ifupdown
cups mountnfs.sh screen-cleanup x11-common
dbus mountoverflowtmp sendsigs xserver-xorg-input-wacom
dkms_autoinstaller mtab.sh single
dns-clean mysql skeleton
gdm mysql-ndb ssh


Se eu apenas deletar algum arquivo desses resolve ou terei problemas?

[3] Comentário enviado por araujo_silva em 22/02/2009 - 13:03h

O sistema Ubuntu o arquivo de inicialização para a estrutura baseada no diretorio /etc/event.d, onde os eventos de inicialização encontram-se distribuidos em arquivos que inicializam serviços específicos. Esta organização apresenta o nível 2 como nível padrão (/etc/event.d/rc2) e os comandos initctl para gerência de eventos.

$ sudo initctl list
logd (stop) waiting
rc-default (stop) waiting
rc0 (stop) waiting
...
tty5 (start) running, process 4720
tty6 (start) running, process 4727

$ cat /etc/event.d/tty1
# tty1 – getty
#
# This service maintains a getty on tty1 from the point when
# the system is started until it is shut down again.

start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5

stop on runlevel 0
stop on runlevel 1
stop on runlevel 6 r

espawn
exec /sbin/getty 38400 tty1

Circule pelos arquivos e compare com o arquivo /etc/inittab para atvar funcionalidades equivalentes.

Abraços

araujo_silva

[4] Comentário enviado por cassimirinho em 22/02/2009 - 19:34h

Não entendi, "circule pelos arquivos e compare..." eu não tenho o /etc/inittab
Seguindo esses dois comando que você listou apareceu e mesma coisa postada aqui.

[5] Comentário enviado por nicolo em 24/02/2009 - 15:12h

Excelente!

[6] Comentário enviado por ramontcruz em 09/03/2009 - 10:12h

valeu demais a pena ter lido!!!
parabens!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts