Linux slogan
Visite também: BR-Linux.org · Dicas-L · NoticiasLinux · SoftwareLivre.org · UnderLinux · BestLinux
» Screenshot



» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha

» Wallpaper
Linux: Slackware
Por denver


Artigo

Destrinchando um PC (configurando um kernel)
Linux user
SlackAngel
22/06/2006
Esse artigo é uma pequena abordagem sobre como se orientar na compilação de um kernel. É algo um tanto quanto egoísta, pois lidei somente com os detalhes do hardware de tal PC; a interpretação, porém, releva a uma série de dicas para conseguir um kernel de acordo com seu hardware.
Por: Alan Ricardo Santos Bueno
[ Hits: 33379 ]
Conceito: 9.8   Linux conceitoLinux conceitoLinux conceitoLinux conceitoLinux conceito + quero dar nota ao artigo

Introdução

Os motivos iniciais de compilar um novo kernel foram os seguintes:
  • Ter um kernel atualizado, com determinados recursos mais desenvolvidos;
  • Ativar o bootsplash e ter uma inicialização gráfica;
  • Deixar o tempo de boot menor;
  • Desabilitar recursos desnecessários;
  • Falta de mulher;
  • Falta de sexo/amor também! =P

OBS: Mesmo depois da compilação, os dois últimos itens da lista não foram resolvidos (ou satisfeitos), então fica aqui um aviso: compilar o kernel não resolve tudo. =)

Navegação

Outros artigos deste autor

Leitura recomendada

Comentários
Comentário enviado por andersonjackson em 22/06/2006 - 10:54h:

Muito Bom.. objetivo e bem explicado..
Parabéns...

Comentário enviado por ulisses_castro em 22/06/2006 - 11:35h:

Uhuuu veio em boa, obrigado pela contribuição!!!! Ótimo artigo!

Onde aplico o poema?? o.O

Valeu...

Comentário enviado por andrack em 22/06/2006 - 12:28h:

Aheuahueaue...

Os dois últimos motivos da compilação são os fatores fundamentais!


Parabéns pelo artigo!


Comentário enviado por pink em 22/06/2006 - 12:38h:

Nossa muito louco esse artigo... mas enfim, adorei já faz parte do meus favoritos, muito bom!
Abraços

Comentário enviado por medeiros64 em 22/06/2006 - 13:48h:

hum surgiu uma duvida bom seguinte p/ minha rede funcionar tenho q carregar o modulo de minha placa (modprobe sk98lin)

e quando fui compilar o kernel fiz assim make bzImage, make all e ai de o seguinte erro

CC [M] drivers/net/sk98lin/skge.o
in file included from drivers/net/sk98lin/h/skdrv2nd.h:48,
from drivers /net/sk98lin/skge.c:118:
drivers/net/sk98lin/h/skgehw.h:1217:2: invalid preprocessing directive #ddfine
make[3]: *** [drivers/net/sk98lin/skge.o] Error 1
make[2]: *** [drivers/net/sk98lin/] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2
bash-3.00#

bom e agora alguem ai tem alguma ideia do q fazer, bom notei q nao tem minha placa de rede no kernel

Marvell technology Group Ltd. 88e8001 Gigabit Ethernet Controller (rev 13)

bom achei q seria só carregar o modulo dela novamente com o kernel novu
to compilando o kernel 2.6.16.11 sem o bootsplash.
o erro aconteceu quando dei o comando make all logo apos o make bzImage, rsrsr mas se eu pular o make all acredito q o erro iria acoontecer no make modules mesmo.

ae rsrs to esperando p/ continuar kkkkkk valew galera bom sugestoes sao bem vindas rsrsrs mesmo sem certeza é q nao tenho ideia do q pode aconter.

valew galera t+


Comentário enviado por andrack em 22/06/2006 - 13:54h:

OPá!

"
drivers/net/sk98lin/h/skgehw.h:1217:2: invalid preprocessing directive #ddfine
"

Esse linha diz tudo! Existe algo "cagado" no código, tente trocar a palavra: " #ddfine",
por "#define".


Falowz!

Comentário enviado por medeiros64 em 22/06/2006 - 14:05h:

blz

entao nao entendi.
como assim trocar a palavra ??? e se o problema é o modulo carregado tem como eu descarregalo rsrsrs ????

valew cara t+

Comentário enviado por andrack em 22/06/2006 - 14:13h:

Ok Amigo.... vamos lá!

> hum surgiu uma duvida bom seguinte p/ minha rede funcionar tenho q carregar o
> modulo de minha placa (modprobe sk98lin)

- Beleza, vc têm que carregar mesmo!

e quando fui compilar o kernel fiz assim make bzImage, make all e ai de o seguinte erro

CC [M] drivers/net/sk98lin/skge.o
in file included from drivers/net/sk98lin/h/skdrv2nd.h:48,
from drivers /net/sk98lin/skge.c:118:
drivers/net/sk98lin/h/skgehw.h:1217:2: invalid preprocessing directive #ddfine
make[3]: *** [drivers/net/sk98lin/skge.o] Error 1
make[2]: *** [drivers/net/sk98lin/] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2
bash-3.00#

- Ouve um erro durante a compilação do módulo "skge.o", e pela mensagem
de erro, tudo indica que existe algo errado no código:

"
drivers/net/sk98lin/h/skgehw.h:1217:2: invalid preprocessing directive #ddfine
"

- Repare que o erro é claro: "invalid preprocessing directive #ddfine". A palavra
"#ddfine", não é uma palavra válida pra o pré-processador C (não é uma
palavra reservada), lógicamente por um problema no código.

- Edite o arquivo: "drivers/net/sk98lin/h/skgehw.h", na linha 1217, e troque
a palvra "#ddfine", pela palavra "#define".

- Após a alteração, tente compilar os módulos novamente.


Falowz....


Comentário enviado por andrack em 22/06/2006 - 14:15h:

Amigo...

Caso vc seja um "gentooniano" (??):

http://gentoo-wiki.com/HARDWARE_sk98lin


Falowz...

Comentário enviado por medeiros64 em 22/06/2006 - 14:31h:

fala aew agora foi valew t+
ha eu sou "Slackriano" rsrsr

flw

Comentário enviado por gsi.vinicius em 22/06/2006 - 14:32h:

huahuahua.....muito bom, foda...os motivos finais pra compilação do kernel



Comentário enviado por SlackAngel em 22/06/2006 - 23:25h:

Bom, desde a escrita deste artigo a situação continua a mesma (a.k.a "seca"), logo, a quantidade de tempo disponível para aprendizagem tem sido grande, to ficando inteligente! huahuahua

Mas o motivo desse comentário é outro, segue o motivo abaixo...

Só adicionando um dado em relação ao tempo de boot...
No Slackware, se tu quer o sistema pronto para uso em poucos segundos, desabilitar alguns serviços é a melhor solução, vou tentar enumerar os mais básicos que podem ser desativados sem medo:


No arquivo /etc/rc.d/rc.S.

Um exemplo:
-ISA Plug-and-Play devices
Se você não tem dispositivos ISA, comente essa seção, vai ficar assim:

#Configure ISA Plug-and-Play devices:
#if [ -r /etc/isapnp.conf ]; then
# if [ -x /sbin/isapnp ]; then
# /sbin/isapnp /etc/isapnp.conf
# fi
#fi

Agora, é óbvio que não há necessidade de comentar essas seções caso
você não
tenha compilado suporte aos dispositivos no kernel, isso é útil para desativar serviços quando se tem outro kernel instalado (no caso do Slack, o 2.4.31 que vem com muita coisa habilitada). Mas como eu sou mão-de-vaca, evitei até mesmo que a estrutura de controle fosse interpretada =P.


Outros serviços que podem ser desabilitados no arquivo rc.M:

- Seção "Initialize PCMCIA devices: "
Se não tem placa PCMCIA, comente até o último fi da seção

- O ldconfig atualiza os links de bibliotecas (para mais informações: $man ldconfig), se você não quer que isto seja executado durante o boot, pode desativar essa opção também, e diminuir consideravelmente o tempo de boot; se instalar alguma lib depois de desativar, terá que executar o comando ldconfig.

- Seção "Start dnsmasq, a simple DHCP/DNS server: "

Não cheguei a verificar mais profundamente para que serve esse serviço, mas pela descrição é algum tipo de servidor DHCP/DNS =\, eu comentei...

- Seção "Start the print spooling system. This will usually be LPRng (lpd) or CUPS. "
Desative caso não tenha nada relacionado à impressoras.

- Seção "Start netatalk. (a file/print server for Macs using Appletalk)"
Algo relacionado a servidor de arquivos e impressoras para Macs usando Appletalk ;)... sou pobre, nunca vi um Mac de perto e não sei o que é Appletalk =(.



No arquivo rc.6 (halt ou reboot) tu pode desabilitar algumas coisas para o pc reiniciar mais rápido =). Desabilite as desativações de serviços que não foram iniciados ( dá na mesma, então não tem muita diferença ).

Para enrolar ainda mais esse comentário ( e provar que a maioria das coisas que eu digitei foi em vão ), você pode desabilitar tirando a permissão de execução dos serviços, e que é mais rápido :|...exemplo:

#chmod -x /etc/rc.d/rc.pcmcia
#chmod -x /etc/rc.d/rc.love

Tome cuidado com o que desativa...

...e assim vai, até você desativar algo importante e o sistema não funcionar mais; hehe brincadeirinha =P


Au revoir, dames et messieurs...



Comentário enviado por PCMasterPB em 23/06/2006 - 10:04h:

Bom, ao que parece a única coisa que lhe falta agora para sua plena felicidade é uma mulher. hehehe. ;D

Comentário enviado por sombriks em 24/06/2006 - 02:18h:

obra de arte o artigo. é meu favorito já.

Comentário enviado por arauto em 24/06/2006 - 12:06h:

Muito bom artigo. Um detalhe quando eu instalei na minha máquina o bootsplash é que a pasta "themes" (/etc/bootsplash/themes) foi criado quando instalei bootsplash-10.2-i486-2kta.tgz.

Outra dica que talvez seja interessante para alguns é habilitar o serviço rc.udev em /etc/rc.d/ quando é utilizado o kernel 2.6. Ele é responsável pela criação dinâmica e administração de dispositivos no kernel 2.6. Note que este serviço vem desabilitado quando instalamos o slackware com o kernel 2.4. Para os inexperientes, faça o seguinte para habilitar este serviço:
# Entre com sua senha de root:
$ su -
# Dê permissão para o arquivo ser executado:
$ chmod +x rc.udev




Comentário enviado por david.kwast em 24/06/2006 - 18:44h:

Parabéns, muito bom, cada vez me surpriendo mais com a capacidade da comunidade do soft livre

Comentário enviado por ulisses_castro em 25/06/2006 - 18:56h:

Opa! Final de Semana... dei uma recompilada básica aqui no kernel e talz... experimentar o Artigo que ficou mto bom e acabei esbarrando em um "detalhe" que pode atrasar a vida de quem cria initrd.img com o comando mkinitrd como eu....

depois de compilado o kernel, eu uso o mkinitrd para gerar minha initrd.img no caso deste comando...

# splash -s -f bootsplash-1024x768.cfg >> /boot/initrd.splash

substitua o initrd.splash pelo nome do seu initrd criado com o comando mkinitrd.... este comando splash não cria uma imagem ele ANEXA uma imagem ao seu arquivo initrd.img ....

abraços....

Comentário enviado por FelipeDetona em 28/06/2006 - 23:13h:

Segui corretamente os procedimentos, os 4ºs primeiros items foram realizados, tirando a barra de progresso do bootsplash, ainda vou configurar, e os dois útlimos items não foram realizados. Vou ter que esperar a nova versão. (Dizem que o linux faz milagres né? heheh)

Comentário enviado por duda_syn em 07/03/2007 - 13:15h:

huaahu maneiro o humor nerd no inicio kkkkk
bom artigo mano..


Comentário enviado por rrubio em 20/02/2008 - 22:07h:

muito bom artigo.


valeu por compartilhar


Contribuir com comentário
  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Contribuir com: [ Artigo | Conf | Dica | Pergunta | Script | Screenshot | Simulado | Wallpaper ]
Responsável pelo site: Fábio Berbert de Paula - Copyleft© 2002-2008 Viva o Linux.com.br

Viva o Linux

A maior comunidade Linux do Brasil! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.