Recompilando o Kernel

Um simples artigo tentando explicar como recompilar o kernel a partir de seus fontes. Usa LILO como gerenciador de boot.

[ Hits: 26.235 ]

Por: Bruno Morato Barberis em 05/12/2007 | Blog: http://k33p.webng.com/


Breve introdução



(00) Breve introdução

Seu kernel nunca mais será o mesmo ( )


Há muito tempo recompilar o kernel deixou de ser um mistério. Mas ainda assim são poucos os usuários que tem experiência suficiente para fazê-lo. A grande vantagem em fazer isso é que ele nunca mais será o mesmo, no bom sentido claro... ele vai perder alguns quilos, tirando coisas que você nunca vai usar na sua vida que estão contidas lá, o mesmo ocorre com os pacotes que vem com o GNU/Linux (tanta coisa que você não sabe nem para que serve).

Ah sim... Esta é uma das vantagens do GNU/Linux sobre o Windows!

O kernel é o sistema operacional [Linux], é ele que controla os dispositivos e demais periféricos do sistema (tais como memória, placas de som, vídeo e outros recursos disponíveis).

(01) LEIA ISSO ANTES DE CONTINUAR

Antes de começar a se aventurar nessa brincadeira é imprescindível que o usuário conheça a máquina na qual está instalado o OS.

Pq? i.i
Quando você começar a brincar com ele vai precisar saber o que pode remover e o que não se deve alterar.

Ah Sim! :D
(Então não vá dar uma de herói se não vai receber um grande Kernel Panic)
Aí vem aquele "Onde foi que eu errei" :(
Está tendo em mente tais coisas > let's Go

    Próxima página

Páginas do artigo
   1. Breve introdução
   2. Kernel passo a passo
   3. Chegou a hora do Lilo
   4. About
Outros artigos deste autor

Guerra Santa

Leitura recomendada

Instalando o kernel 2.6.13 pré-compilado no Slackware 10.2

Kernel atualizado no Debian - Parte I

ReactOS: O irmão open-source do Microsoft Windows NT 4.0

O Processo de Boot no Linux

Kernel v3.x no Debian - Compilação em 7 passos práticos

  
Comentários
[1] Comentário enviado por tenchi em 05/12/2007 - 14:09h

Embora já existam muitos tutoriais aqui mesmo no VOL tratando do assunto, este foi um bom texto, pois abordou de forma explicativa para quê serve cada passo ;-)

Só acrescento algumas informações:
- Desde o kernel 2.6.11 (acho) o comando xconfig não abre mais um programa que usa a innterface Tk, mas agora usa Qt, o que exige que o usuário tenha esta lib instalada no sistema.
- Há outro configurador gráfico, que usa interface gtk+, que pode ser chamado pelo comando make gconfig
- Não é obrigatório renomear a pasta antiga dos módulos do kernel. Basta só compilar o novo kernel com um "nome" diferente. Para isso, basta modificar o arquivo Makefile. Fica legal além de "bonitinho" ;-)


[2] Comentário enviado por SMarcell em 05/12/2007 - 15:09h

Legal o artigo! Ainda me lembro da primeira vez que tentei compilar o kernel aqui no meu Slack, nossa apanhei que nem cachorro sem dono! mas após tentativas e mais tentativas consegui, e hoje compilar um kernel pra mim é a coisa mais natural do mundo. Só pra constar:
- Meu Slack com kernel compilado todo bacaninha, sobe em menos de 20 segundos!

[3] Comentário enviado por gnomo_dead em 05/12/2007 - 16:24h

"O kernel é o sistema operacional"
Parei de ler por aqui

[4] Comentário enviado por Brunonormandia em 05/12/2007 - 18:15h

dúvida:
tenho um kernel que baixei aqui há algum tempo. Mas por ter trocado de máquina gostaria de saber: posso usar o mesmo kernel ou tenho de baixar ele em nova arquitetura outra vez?

outra dúvida: é possível eu recompilar o kernel trocando no caso de arquitetura do slack sem mandar meu sistema pro saco?

off:SMarcell menos de 20 segundos mesmo??? no meu pc que tá bem potente gasta na média de 30 segundos!!

[5] Comentário enviado por elgio em 05/12/2007 - 18:48h

Oi gnomo_dead:

O que tem de errado com a frase "O kernel é o Sistema Operacional".

Consideras equivoca esta afirmação?
Eu considero-a corretíssima dentro do conceito científico do que é um Sistema Operacional.

[6] Comentário enviado por fco em 06/12/2007 - 00:18h

Ótimo artigo!!!

Para os que ainda não fizeram... compilem!!!

SMarcell -> o meu também!!! Hehehhehehhehe....

gnomo_dead -> desculpa, mas você foi bem infeliz.... Pense! Antes de dizer bobagem.

[7] Comentário enviado por k33p em 06/12/2007 - 02:32h

<<!

ah sim obrigado pelo complemento! tenchi

- Não é obrigatório renomear a pasta antiga dos módulos do kernel. Basta só compilar o novo kernel com um "nome" diferente. Para isso, basta modificar o arquivo Makefile. Fica legal além de "bonitinho" ;-)

# cd /usr/src/linux/
vim Makefile
----------------(exemplo)
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 21
EXTRAVERSION = -5rc01
NAME=nome_do_kernel
----------------:wq

fazer isso é bem mais util tbm concordo..

>>!

ah e desculpe usar o termo "kernel é o sistema operacional [Linux]".
deveria ter me referido a ele. como o nucleo.. do sistema operacional GNU!

um kernel para 386 funcionará em todas as máquinas suportadas pelo Linux.

http://correrianaesquina.wikidot.com/kernel-linux-embarcado

ah sim a quem estiver recompilando o kernel, pela primeira vez.. eu recomendo somente alterar a arquitetura.. e mais a frente ir aprimorando e entendendo as opções... não se preocupe em receber um kernel panic.. afinal faz tudo parte do aprendizado... melhor errar e aprender.. do que nunca tentar..

"nunca deixe de marcar o tipo de sistema de arquivos que vai usar.. tip: ext3, ext2, xfs etc.."

E0F-

[8] Comentário enviado por hugoalvarez em 06/12/2007 - 14:40h

Bom artigo principalmente para você autor, que por muitas vezes vai poder consultá-lo como fonte de referência, ora ou outra eu faço isso com os meus também.

Não considere minhas palavras uma critica negativa, nos próximos artigos tente ser mais detalhista, eu parei de publicar minhas dicas e passei a armazená-las somente para consultá-las quando necessário depois que parei para analisar algo que me disseram.

Isso também não é uma crítica ao site:

"Antigamente o vivaolinux era o melhor de site linux do país, hoje é um grande armário de receitas para os mais diversos tipos de bolo sem nenhum estudo de como esses bolos foram feitos, eles apenas alteram ou copiam outras receitas mais antigas"

Quem me disse isso foi um amigo que eu sempre respeitei mto no mundo linux, e parei para pensar, o que ele disse é verdade!!!

Se eu fosse um leigo executando os passos do seu artigo provavelmente teria sucesso, mas o que são todas aquelas opções que aparecem ao executar o make menuconfig?

Nem faço idéia, só sei que se eu mexer é perigoso!!! dizem que eu posso até danificar meu hardware, é melhor não arriscar!!!

Até aí em cima era uma opinião, agora é a parte da crítica, só duas:

1. Indique a seus usuarios a utilização do lspci para eles listarem o hardware e poderem saber o que ativar ou não,

2. Ao invés de colocar a frase cuidado ao alterar essas opções pois, você pode parar o funcionamento de seu LINUX, isso está escrito em 99% das receitas de bolo, estude a funcionalidade de cada uma das opções por exemplo Code maturity level options, e após saber para que ele serve escreva em seu artigo, concluindo esse estudo você terá ajudado muito mais quem realmente quer aprender, pois, se você não estudou para que serve essa opção por exemplo, o usuário que está utilizando o seu artigo com certeza também não vai estudar.

Por enquanto é isso, não se preocupe com os pontos dos artigos e sim com seu próprio conhecimento, escrever artigos é uma forma de praticar o que você já sabe, continue assim e não se chateie comigo ou pelas minhas palavras.

Não perca a magia e o gosto que você tem pelo vivaolinux como eu perdi!!!

Depois que me mostraram esse ponto de vista de um angulo diferente passei a raramente visitar o vivaolinux.

Na próxima você acerta.

Até mais.


[9] Comentário enviado por k33p em 06/12/2007 - 15:23h

Bem entendi suas criticas estão corretas..
porem fui claro no fato de ser um "artigo.. teste" ou melhor dizendo simples, não fui completo nas explicações queria mais dar uma introdução "muito breve.." pois afinal existem diversos artigos ótimos aqui no viva o linux.. falando sobre o kernel..

se fosse descrever para que serve cada opção introduzida no kernel esse artigo iria me consumir muito tempo. sabe ate tenho interesse em fazer, algo assim.. mas só com ajuda de outros membros.. iria ser possivel..

realmente meu artigo ficou um tanto incompleto, para aqueles que procuram realmente ajuda...

[10] Comentário enviado por Laís OLiveira em 06/12/2007 - 21:58h

Sistema Operacional = Linux
Kernel = Linux
logo, Sistema operacional = kernel
(y)
Parabéns pelo artigo! (lê-se sarcasmo aqui =])

[11] Comentário enviado por k33p em 07/12/2007 - 00:00h

correto. Laís

[12] Comentário enviado por gnomo_dead em 09/12/2007 - 19:34h

Bom caras, oq eu quis dizer em meu comentário foi o seguinte, vc não pode jamais chamar um kernel de Sistema Operacional, pq seu sistema nunca será operacional somente com um kernel, o kernel eh sim a parte mais importante do S.O., mas soh com ele vc nunca vai conseguir operar o sistema, por isso q no GNU/Linux por ex. existem todas as parafernalhas da GNU pra q vc possa ter um sistema operacional, então o Kernel não eh o Sistema Operacional, pq o S.O. eh um conjunto de ferramentas, o kernel eh apenas um programa q se comunica com o hardware da máquina...
Então escolha bem suas palavras ao se referir a um Sistema Operacional.
Repito, o Kernel não eh o Sistema Operacional, ele faz parte de um.

[13] Comentário enviado por elgio em 10/12/2007 - 09:48h

Oi gnomo_dead!

Eu realmente odeio estas polêmicas tão úteis quanto discutir a cor da asa do TUX.

Esta polêmica se deu porque tu ironizou o comentário do autor deste artigo como se ele tivesse falado a maior bobagem do mundo.

Como isto é "quase" um mero jogo de palavras onde o contexto é muito mais importante que uma definição solta, ambos estão certos. Para o usuário um SO é um todo, com suas aplicações. Mas isto não dá o direito de rotular como "bobagem" a definição de que o kernel é o SO.

[14] Comentário enviado por tenchi em 12/12/2007 - 15:56h

Elgio, você está errado. A asa do Tux não é nem uma nem outra cor. Na verdade depende do ângulo que você olha. Isso vem do fato de as asas dos pingüins conterem uma substância chamada...hauahau

Gente, querem uma definição do que o Linux realmente é?

Linux is a free Unix-type operating system originally created by Linus Torvalds with the assistance of developers around the world. Developed under the GNU General Public License , the source code for Linux is freely available to everyone.

Retirado de: http://www.linux.org/

Ali diz que o Linux é um sistema operacional, que é o que o Linux é. Mas um sistem aoperacional não consegue se comunicar sozinho com o usuário - só Chuck Norris e o Capitão Nascimento conseguem tal façanha ;-). Aì entram toda a parafernália dos gerenciadores de boot, interpretadores, etc, que fazem parte do projeto GNU.

Prova disso é que nos primeiros segundos do boot - antes de o init ser executado - temos só a presença do Linux. Tanto que normalmente é nessa hora que acontece o kernel panic.

E essas discussões não levam à nada, como sempre.

[15] Comentário enviado por luan tavares em 22/12/2007 - 19:19h

o Artigo esta bom apesar de conter alguns erros.

[16] Comentário enviado por asdf2 em 29/12/2007 - 22:44h

uma correção:

Sistema Operacional = GNU
Kernel = Linux
logo, Sistema operacional = GNU/Linux

esse é o correto pois pode exister outros "kerneis" para o GNU, exemplo:

GNU/BSD = sistema GNU com kernel BSD

GNU/HURD = sistema GNU com kernel HURD

[17] Comentário enviado por drash em 03/01/2008 - 19:28h

?comentario=Opa tuto mais facil que eu axei ate agora pra compilar o kernel!
sou neebi e ajudou muitoo
vlw!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts