Visite também: Br-Linux ·  VivaOLinux ·  LinuxSecurity ·  Dicas-L ·  NoticiasLinux ·  SoftwareLivre.org ·  [mais]
Voltar   Under-Linux.org Fóruns > UnderLinux Wiki
Wiki Classificados Galeria Reviews Jogos Comunidades RSS Feeds FAQ Termos de Uso Sobre
Cadastre-se FotosBlogs Lista de Membros Calendário Pesquisar Mensagens de Hoje Marcar Fóruns Como Lidos

Ferramentas pessoais
Publicidade

From UnderLinux Wiki

image:tux.png


Bootsplash no Slackware

Tabela de conteúdo

introdução

Este artigo ensina a como configurar o bootsplsh no Slack, para quem nao sabe, bootsplash é uma versao grafica do startup do seu Linux, ele permite uma interface mais amigavel para a inicializacao do seu sistema, o que faz com que os novos usuarios nao se espantem tanto com a nova plataforma.

Pré-requisitos

A primeira ação a ser feita é o download do patch referente à sua versão de kernel, o mesmo pode ser encontrado em


http://www.plumlocosoft.com/kernel/patches/2.4/

Somente precisa ser baixado o patch com bootsplash ou bs no nome, que pode ser encontrado em subpastas split ou components. (Ao entrar no link você perceberá do que estou falando)

Após a obtenção do patch é necessário o download de um theme (o qual vai ser sua bootsplash), que pode ser obtido em


http://www.bootsplash.org


(recomendo que use o theme Default Linux, que é o que foi testado neste artigo).

Faz-se necessário também o pacote de fontes a seguir:


ftp://ftp.suse.com/pub/people/stepan/bootsplash/rpm-sources/bootsplash/bootsplash-3.0.7.tar.bz2


Este pacote possui os fontes do utilitário splash, que será usado mais adiante.

Um outro pré-requisito muito importante é saber compilar o kernel. (Sem este pré-requisito não continue)

Aplicando o patch ao kernel

O patch pode ser aplicado facilmente da seguinte maneira:

# bunzip2 arquivo-do-patch.bz2
# cd /usr/src/linux (ou onde estiver o fonte do seu kernel)
# patch -p1 < /onde-está-seu-patch/arquivo-do-patch

Se você receber alguma mensagem de erro o patch é incompatível com sua versão de kernel, então baixe a versão certa.

Na config do seu kernel assegure-se de ter marcado a opção "Console drivers -> Frame-Buffer support -> VESA VGA graphics console" (ou outro framebuffer apropriado), e a opção "Use splash screen instead of boot logo".

Feito isto, compile seu kernel e passe para o passo seguinte.

Compilando o splash

Basta descompactar o bootsplash-3.0.7.tar.bz2, entrar no diretorio criado com o nome de bootsplash-3.0.7, executar os 2 passos seguintes:

# make splash
# cp splash /sbin

Criando o /etc/bootsplash

Esta parte é importante, pois é a pasta onde serão armazenados seus themes. Então, crie a pasta "/etc/bootsplash" e dentro dela crie outra chamada "themes". Dentro então de "/etc/bootsplash/themes" descompacte o theme que você obteve no passo 1.0.

Criando o /boot/initrd com a bootsplash

Este passo é bem simples, basta executar o comando:

splash -s -f /etc/bootsplash/themes/Linux/config/bootsplash-1024x768.cfg > /boot/initrd

Repare que usei "/etc/bootsplash/themes/Linux/config/bootsplash-1024x768.cfg" porque é referente ao theme Default Linux que foi usado neste artigo, se você baixou outro theme adeque o caminho ao mesmo.

Editando o "/etc/lilo.conf"

Existem 2 linhas fundamentais para o funcionamento correto do bootsplash, são as que seguem:

initrd = /boot/initrd
append = "splash=silent"

As linhas podem ser colocadas logo abaixo desta:

root = /dev/hda1

Ficando então seu lilo.conf mais ou menos desta maneira:

image = /boot/vmlinuz
root = /dev/hda1
initrd = /boot/initrd
label = Linux
read-only

Criando o "/etc/rc.d/rc.bootsplash"

O "/etc/rc.d/rc.bootsplash" deve ser da seguinte maneira:

#! /bin/sh
#
function progressbar()
{
if [ $# != 1 ]
then
echo "Usage: progressbar {progress}"
exit 1
fi
echo "show $(( 65534 * $1 / 100 ))" > /proc/splash
}

Ps.: não se esqueça que o "/etc/rc.d/rc.bootsplash" precisa ser executável, para isso:

# chmod +x /etc/rc.d/rc.bootsplash

Editando alguns arquivos no "/etc/rc.d/"

Dois arquivos importantes serão editados para que controlem a barra que indica o carregamento do sistema no bootsplash, são eles: rc.M e rc.S

No início dos respectivos arquivos você precisa inserir esta linha:

. /etc/rc.d/rc.bootsplash

(a linha precisa estar logo abaixo do #! /bin/sh)

Após feito isso é você quem vai decidir a porcentagem em que o sistema está carregado em tal ponto, você deve então chamar a função progressbar seguida de um número que vai de 0 (zero) a 100 (cem).

Uma nota importante é que o rc.S é iniciado primeiro na hora do boot, então é interessante que logo após a primeira função que ele executar você já coloque progressbar 10 (posicionar a barra de carregamento do boot splash em 10%), e por ai vai. É interessante também que ao final do rc.S termine em mais ou menos 50% e a partir do início do rc.M você coloque progressbar 60, e ao final progressbar 100. Segue um exemplo para que você possa entender melhor:

#!/bin/sh
# rc.S exemplo
. /etc/rc.d/rc.bootsplash

echo "Progress bar em 10%"
progressbar 10
echo "Progress bar em 20%"
progressbar 20
echo "Progress bar em 35%"
progressbar 35
echo "Progress bar em 50%"
progressbar 50
# Fim do rc.S
#!/bin/sh
# rc.M exemplo
. /etc/rc.d/rc.bootsplash

echo "Progress bar em 60%"
progressbar 60
echo "Progress bar em 70%"
progressbar 70
echo "Progress bar em 85%"
progressbar 85
echo "Progress bar em 100%"
progressbar 100
# Fim do rc.M

Penso que assim fica melhor entendido.

Últimos ajustes

Feito todos os passos anteriores agora só falta você copiar a sua imagem do kernel com o patch aplicado para /boot/vmlinuz ou criar um link para ele. Executar: lilo (para que o lilo seja reinstalado). E finalmente! Reiniciar a máquina e rezar pra que tudo tenha funcionado, hehehe, brincadeira, se você seguiu os passos certinho tudo deve funcionar.

Contatos e dúvidas

Se alguém quiser manter contato ou tirar alguma dúvida (pequena!) basta me enviar um e-mail. < blood_brother@phreaker.net>

Ps.: Se tiver algum erro no texto também ficaria grato que me enviassem um e-mail relatando-o, para que eu possa corrigir.

Créditos

Gostaria de agradecer àqueles que acreditam em mim, e ao pessoal do #LinuxHelp da rede VirtuaLife que sempre dão uma força!

Slackware r0x!

Dados do autor

Nome: Bruno R. da Silva Nickname: Blood_Brother ou Blutsbruder Nascido em: 14/04/1985 Cidade: Florianópolis Site pessoal: http://www.bloodcorp.tk E-Mail: < blood_brother@phreaker.net> Ocupação: Estudante de Ciências da Computação na Universidade Federal de Santa Catarina (UFSC)

Experiencia Profissional: Administração de redes Windows e Linux, implementação de proxys e serviços de ftp, http, sshd e vnc.
Horários baseados na GMT -3. Agora são 0:30.


Powered by vBulletin®
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd
SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.