Texas Flood Init System
Boot rápido e serviços balanceados para Linux - Luciano Andress Martini
Última versão: 0.11 Alpha1 - Versão anterior 0.1 Beta4
  
Seja bem vindo!!!
Download: Leia o manual de instalação para fazer o download.Última Versão: Texas Flood 0.11 Alpha1 (vide o change-log abaixo)Change-Log Ver 0.11 generic (Alpha1)
-Corrigido bug ao determinar runlevel
-Programas de compatibilidade com Sysvinit: runlevel e update-rc.d
-Sistema de remoção texasflood-remove um pouco melhorado.
Change-Log Ver. 0.1 generic (Beta4)
-Algumas distribuições não ganhavam tempo de boot, pois as partições não eram desmontadas corretamente.
-Partições não eram desmontadas corretamente em algumas distribuições
-Componente melhorado para gerenciamento de prioridades
-INIT mais leve
-BUGS para desligar/reiniciar em algumas distribuições
Change-Log Ver. 0.1 generic (Beta3)
-Suporte ao HAL nas distribuições ArchLinux/DebianLenny/Gentoo
-Varias distribuições que usam pacotes mais novos (como o Debian Sid)
ficavam ainda mais lentas com o Texas Flood instalado, devido a um bug no thread do HALD, ao tentar
tratar versões novas do mesmo.
-Atribuição automática de serviços do SYSVINIT
-Log em /var/log/texas-flood-s3 e /var/log/texas-flood-s1 dos serviços carregados.
-Era possivel executar o Texas Flood duas vezes(após o boot completo) - travando por completo o sistema.
-Gerado um arquivo de pid em /var/run para o Texas Flood.
-Tratamento mais inteligente de parâmetros
Change-Log Ver. 0.1 generic (Beta2)
-Correção de bug: serviços do terceiro estágio eram carregados sem log e de forma que atrapalhava
em muito o desempenho em sistemas modo texto, não mudando em nada o tempo de carga.
-Corrigido comando para atribuição de serviços nas instruções de uso: dia 05/11/2007 20:11
Change-Log Ver. 0.1 generic (Beta1)
-Correção de bug: serviços do terceiro estágio eram ignorados
Change-Log Ver. 0.1 generic (Beta0)
-Correção de bug para desinstalar, backups eram sobrescritos
-Adição do programa texasflood-remove para remover o texas flood, através de um único comando.
-Adição de um arquivo com documentação em português
-Correção do suporte à linguas(português) no arquivo /etc/texasflood.conf
Change-Log Ver 0.1 generic (Alpha)
-Tentativa de implementar suporte a distribuições diversas
-Injeção direta de Init
Como funciona?
O Texas Flood reduz o tempo de boot e de resposta do seu sistema, divindo-o em 3 linhas de processo.
Estas linhas de processo são capazes de reagir de forma inteligente entre si calculando dependências
e prioridades. O resultado é um boot limpo e rápido com quantos serviços você quiser atribuir.
Para finalizar o texas flood ajusta a prioridade dos programas, e a forma como o seu sistema fará a gerência de memória
deixando sua distribuição muito mais rápida.
Assista ao SYSVINIT versus o Texas Flood INIT SYSTEM(rodando num Debian Etch):
(Agradecimentos ao beta tester: pksato)
Como surgiu?
Desenvolvido originalmente para a distribuição linux Resulinux,
o Texas Flood é uma alternativa simples porém poderosa ao SYSVINIT capaz de reduzir efetivamente os tempos de boot e
de resposta dos programas.
Até bem pouco tempo atras o programa era suportado apenas por esta distribuição, mas numa tentativa de contribuir com o
mundo livre, o Texas Flood começou a lançar versões entituladas como "GENERIC/VERY EXPERIMENTAL".
A primeira tentativa de portar o Texas Flood para outras distribuições foi com a criação do
Texas Flood 2.1 Green Edition sucedido apenas em distribuições baseadas no Debian(excluindo as que usam Upstart como o Ubuntu)
Apesar disso o número de peculariedades que vinham do Resulinux eram muito grande nesta versão.
Com a criação da versão 0.1 Generic, o Texas Flood assumiu o papel do INIT e o número de peculariedades diminuiu,
alem disso ele ganhou um controle personalizavel(leia as instruções de uso).
Tenha Cuidado:
O Texas Flood Generic ainda é um programa experimental. Use este programa somente para fins de testes.
Observações importantes:
-Apenas as versões GENERIC ainda são instáveis. As versões "Blue Edition", utilizadas pela distribuição Resulinux são estáveis.
-A perda dos serviços de boot é algo normal na instalação de um novo INIT.
Você deverá atribui-los novamente, de acordo com a documentação do Texas Flood(logo abaixo).
Instruções de Uso:
Indice:
1.0 Instalação
1.1 Executando o setup
1.2 Editando o arquivo /etc/texasflood.conf
1.3 Reiniciando pela primeira vez
2.0 Gerenciamento de serviços
2.1 Serviços do terceiro estágio(Naturais)
2.2 Serviços do segundo estágio(Xorg)
2.3 Serviços do primeiro estágio(Automáticos)
3.0 Balanceamento de prioridades em tempo real (/etc/texasflood.list)
3.1 Sintaxe
3.2 Exemplos
3.3 Erros de sintaxe
3.4 Limitações
4.0 Arquivos
4.1 Arquivos de configuração
4.2 Arquivos de usuário
4.3 Arquivos de controle
4.4 Arquivos executáveis
5.0 Gerenciamento de tty
6.0 Desinstalação
7.0 Sobre
-----
1.0 Instalação:IMPORTANTE: Apesar de a instalação não ser gráfica, é necessário executar o instalador no ambiente
gráfico para que o Texas Flood calcule corretamente o balanceamento de estágios e processos gerando melhor
velocidade no seu ambiente favorito também em tempo de execução.
(o código fonte esta incluso no .tar)
Para instalar o Texas Flood deve-se proceder da seguinte maneira:
1.1 Executando o setup
Baixe o texasflood0.1.tar.bz2 do site do Texas Flood.
Rode os seguintes comandos:
tar -jxf texasflood0.1.tar.bz2 - Para descompactar o arquivo
cd texasflood0.1 - Para entrar na pasta gerada pela descompactação
./setup
Faça isso estando no seu ambiente gráfico preferido para melhorar a performance do Texas Flood
para ele.
1.2 Editando o arquivo /etc/texasflood.conf
É recomendável que você leia com atenção(incluindo comentários) todo o arquivo /etc/texasflood.conf
sem pular nenhuma virgula verificando se tudo esta configurado como deveria, e se os comandos que ele esta usando
para chamar suas aplicações de fato existem. Lembre-se que esta é uma versão instável.
Se você tiver de mudar algum comando, informe isto em nosso fórum de suporte, não se
esqueça de falar qual é a distribuição utilizada.
1.3 Reiniciando pela primeira vez:
Note que o seu sistema perdeu a capacidade de reiniciar, agora que você instalou o Texas Flood.
Isso porque o init é o processo 0 da máquina, e ao modifica-lo o Kernel costuma reagir
de uma maneira confusa.
Va para o modo texto e execute:
reboot --real.
Uma vez no próximo boot, o texas flood sendo executado volta a ser possivel reinciar o computador.
Isto esta sendo corrigido na versão Beta2.
2.0 Gerenciamento de Serviços:
O texas flood não esta interessado em remover seus serviços de boot
apesar de isso ocorrer quando você estiver instalando-o pela primeira vez, assim como
ocorre na instalação de um SYSVINIT diferente do instalado anteriormente
numa distribuição.
Você poderá atribuir seus serviços de uma forma parecida com aquela feita no SYSVINIT.
2.1 Serviços do terceiro estágio:
É aqui que serão atribuidos praticamente todos os seus serviços como apache, sshd, cupsys(que já vem atribuido), e outros.
Ainda é possível alterar a prioridade desses serviços na linha S3_PRIORITY contida no /etc/texasflood.conf
Exemplo de atribuição de serviços no estágio 3:
ln -sf /etc/init.d/apache /etc/texasflood/stage3
Outro exemplo útil: Atribuindo todos os serviços do RUNLEVEL 5 do SYSVINIT no estágio Terceiro estágio do Texas Flood:
ln -sf /etc/rc5.d/* /etc/texasflood/stage3
(Nota o comando cp -a /etc/rc5.d/* /etc/texasflood/stage3 foi retirado daqui porque estava com problemas.)
2.2 Serviços do segundo estágio:
O segundo estágio é virtual e representa o Xorg se presente, por isso não é recomendável
atribuir serviços à ele somente se isso de fato for necessário.
Vide /etc/texasflood.conf
2.3 Serviços do primeiro estágio:
O estágio 1 não é o lugar certo para colocar servidores ou serviços em geral,
ainda que isso seja possível.
Coloque aqui somente o que precisa ser carregado antes do XORG, e para deixar claro praticamente
nenhum serviço precisa ser colocado aqui, porque o Texas Flood já carrega estes tipos de serviço,
mas quando isso não acontece é preciso atribui-los aqui manualmente.
Ainda é possível alterar a prioridade desses serviços na linha S1_PRIORITY contida
no /etc/texasflood.conf
Exemplo de atribuição de serviços essenciais para o Xorg no estágio 1:
ln -sf /etc/init.d/xfs /etc/texasflood/stage1/xfs
(comparação com o SYSVINIT : ln -sf /etc/init.d/xfs /etc/rc5.d/S01xfs)
3.0 Balanceamento de prioridades em tempo real (/etc/texasflood.list):
Alem das prioridades fixas que podem ser ajustadas em /etc/texasflood.conf.
O texas flood ainda permite que o usuário ajuste prioridades de processos
que estarão executando no pós-boot.
Isto é feito no arquivo /etc/texasflood.list, que contém uma lista de processos com suas respectivas prioridades.
3.1 Sintaxe:
Para editar o arquivo /etc/texasflood.list, utilize a seguinte sintaxe:
Processo Prioridade.
Onde a prioridade é um valor de 20 a -20.
Valores NEGATIVOS definem prioridades mais ALTAS(o programa rodará mais rápido em relação aos demais).
Valores POSITIVOS definem prioridades mais BAIXAS(o programa rodará mais lentamente).
3.2 Exemplos:
Veja um exemplo de entradas do arquivo /etc/texasflood.list:
#Prioridade máxima para o firefox:
firefox -20
#Prioridade minima para o kdesktop:
kdesktop 20
#Prioridade normal para o kwin
kwin 0
#Prioridade alta para o vi
vi -12
#Prioridade 4 para o kedit
kedit 4
#Prioridade -17 para o bash
bash -17
Ao definir as prioridades no arquivo /etc/texasflood.list, o Texas Flood é capaz de perceber isso
enquanto esta em execução sem necessidade de reinicialização.
Portanto salve o arquivo e o observe numa ferramenta como o ksysguard como os processos
que você definiu vão mudando de prioridade aos poucos.
3.3 Erros de sintaxe:
Exemplo de erro de sintaxe:
vi -12 #Isto é um comentário
O caracter # faz com que o CONTROLLER_B ignore toda a linha, por isso esta linha
não teria nenhum efeito sobre o sistema.
3.4 Limitações:
gcc -8
O controller B pode demorar para perceber que determinado processo entrou na memória, portanto o gcc
sai e entra muitas vezes enquanto um programa esta sendo compilado, fazendo com que a linha abaixo
não chege a surtir os efeitos desejados, ainda que seja possível defini-la:
4.0 Arquivos:
4.1 Arquivos de configuração:
/etc/texasflood.conf - Contém as configurações básicas para o funcionamento do Texas Flood
/etc/texasflood.list - Contém as entradas para o balanceamento de processos(vide 3.0 Controller B)
4.2 Arquivos de usuário:
/sbin/texasflood-remove - Remove o Texas Flood
/var/log/texas-flood - Logs do Texas Flood
/var/log/texas-flood-s1 - Logs do Texas Flood
/var/log/texas-flood-s3 - Logs do Texas Flood
4.3 Arquivos de controle:
/etc/texasflood-signal - Contém o sinal atual do Texas Flood (não altere isso, a menos que saiba o que esta fazendo)
/var/run/texasflood.pid - Contém o pid atual do Texas Flood
/var/lib/texasflood.version - Contém a versão do Texas Flood
4.4 Arquivos executáveis:
/sbin/init - Coração Texas Flood
/sbin/texasflood-start - Componente do Coração do Texas Flood
/sbin/texasflood-stop - Componente do Coração do Texas Flood
/sbin/texasflood-ctlb - Componente do Coração do Texas Flood
/sbin/texasflood-stg - Controle de estágios
/sbin/shutdown - Apenas para compatibilidade com Shutdown(sendo melhorado, no momento só faz reboot ou desliga, sem esperar)
/sbin/halt - Desliga o computador (sinal 0)
/sbin/reboot - Reinicia o computador (sinal 6)
/sbin/texasflood-start - Controle de Estágios
/sbin/direct_reboot - Reboot físico (Assembler)
/sbin/direct_halt - Halt físico (Assembler)
/sbin/killall5 - Herdado do SYSVINIT, mata todos os processos em execução (em C)
5.0 Gerenciamento de tty(ctrl+alt+f1, ctrl+alt+f2, ctrl+altf3...)
Por padrão o texas flood traz apenas dois ttys:
tty1(grafico) e tty2(texto), para chamar mais ttys rode como root:
texasflood-tty tty3 (para um tty em ctrl+alt+f3)
6.0 Desinstalação:
Para desinstalar o texasflood execute o seguinte comando como root:
texasflood-remove
7.0 Sobre:
O Texas Flood é o sistema de boot desenvolvido para a distribuição Linux Resulinux.
Até bem pouco tempo atras o programa era suportado apenas por esta distribuição, mas numa tentativa de contribuir com o
mundo livre, o Texas Flood começou a lançar versões entituladas como "GENERIC/VERY EXPERIMENTAL".
A primeira tentativa de portar o Texas Flood para outras distribuições foi o Texas Flood 2.1 Green Edition
sucedido apenas em distribuições baseadas no Debian(excluindo as que usam Upstart como o Ubuntu)
Apesar disso o número de peculariedades que vinham do Resulinux era muito grande nessa versão, com a criação
da versão 0.1 Generic, o Texas Flood assumiu o papel do INIT e o número de peculariedades diminuiu,
alem disso ele ganhou um controle de prioridade fácil de personalizar.
Para o Resulinux o Texas Flood é um programa estável, mas para outras distribuições, ele ainda pode
causar alguns problemas, esperamos por sua ajuda de braços abertos.
Download: Clique aqui para baixar o Texas Flood 0.11 Generic Alpha1 (Experimental) Suporte: Acesse o nosso fórum de suporte Que Deus abençoe você!