Desvendando o Arch Linux: Um Pouco sobre SystemV e BSD Init Scripts
por
em 07-09-2010 às 19:06 (4552 Visualizações)
Olá novamente pessoal ! Dando continuidade aos posts sobre o ArchLinux, vamos conhecer, ou apenas relambrar, um assunto interessante: Scripts de Inicialização.
O Arch Linux utiliza um sistema de inicialização identificado como "BSD Like Init Scripts", diferentemente de várias outras distros que temos disponíveis. Mas o que significa isto ? Qual o sistema de inicialização que tem na outros distros ? Como funciona ? Estas questão serão respondidas ao longo do post. Mas deixo claro aqui, que este assunto não será tão aprofundado a ponto de você poder criar um sistema de inicialização, mas tentarei explicar como funcionam da melhor forma possível, para que você possa conhecer e ter, daqui para frente, alguma idéia de como dar manutenção em um ambiente destes. Então, vamos lá!
O Quê!
Todos sabemos que os init scripts, em um sistema unix like servem para inicializar o sistema de fato, ou seja, chamam os scripts e daemons de cada serviço conforme estão configurados, e são executados logo que o boot da bios acontece.
Ambos, System V e BSD-Like fazem isto, mas qual a diferença entre os dois sistemas ? A diferença entre os dois sistemas de inicialização está na sua estrutura.
System V
O System V, também conhecido como SysV, tem uma estrutura baseada em runlevels. Ele executa os daemons conforme cada runlevel é atingido no sistema. Geralmente temos de 6 a 7 runlevels na maioria dos sistemas unix-like, e não existe obrigatoriedade na sua utilização.
Por exemplo, em um sistema Debian temos a configuração do init no arquivo /etc/inittab. Nos diretórios /etc/init.d/rcN.d ficam localizados links simbólicos para os scripts que estão fisicamente gravados em /etc/init.d/, onde este "N" do "rcN.d" indica o número do runlevel em que o script ou daemon será executado. E, nesta mesma organização de um Debian Linux, temos 7 runlevels, conforme a lista abaixo:O termo runlevel refere-se ao modo como um sistema operativo unix está a correr. Normalmente existem sete runlevels numerados de zero a seis.(Fonte:Wikipedia)
- 0 = pára o sistema
- 1 = modo monousuário
- 2 a 5 = modos multiusuário
- 6 = reinicialização do sistema
Este é um ótimo exemplo de de um sistema que uiliza o modo System V, e entre as outras distribuições que também utilizam o System V como modo de inicialização, ( por exemplo Red Hat e Suse) podemos ter pequenas alterações, principalmente na definição dos runlevels, para que se adaptem a cada situação.
BSD Like
Já o modo BSD de inicialização, tem como característica a simplificação de todo o processo e das configurações, onde todo o processo é baseado em um arquivo, o /etc/rc.conf, e os scripts estão em apenas um diretório, o /erc/rc.d, sendo que não temos a utilização dos runlevels neste caso, mas sim apenas dois modos de trabalho: Monousuário ou Multiusuário. Então, se você quer inicializar algum serviço no sistema, basta adicioná-lo no arquivo /etc/rc.conf, ou ainda em alguns sistemas BSDs, no arquivo /etc/rc.conf.local .
Dois grandes exemplos de como um linux com sistema de inicialização BSD Like funciona são: ArchLinux e Slakware. No Arch, é exatamente como mencionado acima. A inicialização do sistema é baseada no arquivo /etc/rc.conf. Além dos daemons que inicializarão ao iniciar o sistema, podemos também configurar relógio, linguagem, teclado, lvm, hostname e rede. Todos os scripts de daemons ( ou serviços ) estão localizados em /etc/rc.d/ e podem ser chamados manualmente com os parâmetros "start" e "stop", além de outros específicos de cada serviço, conforme a nossa necessidade.
Então, espero que tenham gostado de saber um pouco mais sobre a diferença entre estes dois ótimos sistemas de inicialização, e também conhecer como o Arch inicializa. E como sempre digo: não há melhor ou pior, sempre há o que mais se encaixa melhor para resolver o problema proposto, e no nosso caso, foi o BSD, pois tem consigo a proposta que também é fortemente idealizada pelo Arch: a simplicidade.Alguns desenvolvedores ( e utilizadores também ) acham que o System V é mais complicado de configurar, porém muito flexível, e que o BSD Like é bastante simples, e de fácil aprendizado, mas bem menos flexível.
Comentários
+ Enviar Comentário