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


  
Vizualise este site na sua lingua:

Este software esta sujeito aos termos da: GNU General Public License Version 2
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ê!