Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
Entre para seguir isso  
Guest wrpn

Kernel

Recommended Posts

Guest wrpn

Possou o Mandrake 8.2, e queria recompliar o kernel, quais os passo para eu fazer esta compilação?

desde já grato!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites
Guest Thiago
  • Autor do tópico
  • Ola wrpn, beleza???

    bom, vou colocar aqui umas dicas de como compilar, porém estou fazendo como se fosse no slackware, pode ser q na sua distro alguns caminhos de arquivos ou diretorios estejam diferente, mas nada impossivel de fazer. Bom, já vou avisando que depois de você recompilar, pode ser q seu linux não funcione.. hehehe ai você usa o backup... isso é comum nas primeiras vezes, pois você tem q fuçar para aprender.. hehe

    Aconselho q alem do q eu colocar aqui, você procure mais informações e documentações, pois aqui sera um básico do básico...

    Bom, antes de começar, vou colocar aqui só um resumo dos make's:

    make clean

    make mrprober

    make menuconfig

    make dep

    make bzImage

    make modules

    make modules_install

    make install

    Agora vamus lá... boa sorte!

    Compilar o kernel do linux tem sido encarado como um grande trabalho por parte dos usuários Linux mais novos. Na verdade, se seguirmos algumas regras simples, a tarefa de compilar o kernel pode ser bastante proveitosa, pois, além de ajustar opções como o tipo de processador correto para a máquina em uso, adequações ao hardware específico da máquina

    quase sempre resultam em um kernel menor e num sistema mais rápido e estável.

    Apesar de o kernel do Linux ser uma peça de software relativamente complicada, afirmam os estudiosos que é um dos projetos de kernel de 32 bits mais simples em uso atualmente.

    Na verdade, para que um sistema Linux funcione bem, não é imprescindível a recompilação do kernel após a primeira instalação. Mas logo o usuário irá, por necessidade ou apenas a boa e velha curiosidade, interessar-se por colocar esta ou aquela "feature" em ação, como, por exemplo, fazer

    funcionar aquela nova unidade CDR, uma placa de rede específica ou mesmo adequar a máquina às funções de proxy transparente.

    A última versão do kernel do Linux pode ser baixada do endereço

    http://www.kernel.org

    Após o download da versão atualizada do kernel, é necessário descompactar os fontes. Isto é feito no diretório /usr/src, com o usuário logado

    como "root":

    a. copie o arquivo linux-2.4.10.tar.gz para /usr/src:

    [root@locutus]:~# cp linux-2.4.10.tar.gz /usr/src

    b. em /usr/src, exclua o link simbólico "linux":

    [root@locutus]:~# rm linux

    c. descompacte os fontes do kernel copiado em /usr/src - será criado um

    diretório chamado "linux":

    [root@locutus]:~# tar -zxvf linux-2.4.10.tar.gz

    d. renomeie o diretório "linux" recém descompactado:

    [root@locutus]:~# mv /usr/src/linux /usr/src/linux-2.4.10

    e. crie um novo link simbólico "linux", desta vez apontando para o novo

    diretório linux-2.4.10:

    [root@locutus]:~# ln -s /usr/src/linux-2.4.10 linux

    Neste ponto voce deve ter, em /usr/src, os seguintes diretórios e um

    symlink:

           

    [root@locutus]:~# pwd

    /usr/src

    [root@locutus]:~# ls

    linux@        linux-2.4.5    linux-2.4.10    rpm     sendmail

    Essa é a listagem em /usr/src em meu sistema.

    Considere linux-2.4.5 como o diretório dos fontes do seu kernel atual.

    O link simbólico deve apontar para o diretório linux-2.4.10. É nele que

    o trabalho a seguir deve ser feito. Não delete o diretório dos fontes

    anteriores ainda, voce pode precisar dele mais tarde.

    Antes de alterarmos a configuração do novo kernel, vamos salvar em um

    arquivo as configurações de seu kernel anterior.

    Suponhamos que você já tenha configurado algumas coisas no kernel, e que

    esta não seja sua primeira compilação. Você já tem funcionando aquela

    placa

    de rede ou outro hardware, ou mesmo algumas opções especiais do netfilter,

    e quer que o novo kernel as mantenha.

    Para tanto, você deve salvar as configurações atuais de seu kernel.

    SALVANDO SUAS CONFIGURAÇÕES ANTERIORES (SE FOR O CASO)

    Entre no diretório dos fontes anteriormente intalados (fontes originais,

    no exemplo, linux-2.4.5):

    [root@locutus]:~# cd /usr/src/linux-2.4.5

    [root@locutus]:~# make menuconfig

    a. Na tela que se apresentar, role a tela para baixo e escolha a opção

    "Save Configuration to An Alternative File" e tecle ;

    b. Escolha um nome para o arquivo a ser salvo, no final do "path" onde

    deseja salvá-lo.

    Por exemplo, digite "/config" para salvar o arquivo config no diretório

    raiz do sistema. Tecle ;

    c. Saia sem salvar, retornando ao prompt do console.

    Com isso, será possível carregar este arquivo de configuração

    posteriormente.

    MODIFICANDO O NOVO KERNEL

    Continuando, os próximos passos DEVEM ser executados em /usr/src/linux;

    [root@locutus]:~# cd /usr/src/linux

    [root@locutus]:~# make menuconfig

    O comando acima iniciará a configuração em modo gráfico do kernel.

    Opcio nalmente, estando em algum ambiente X (KDE, Windowmaker, Blackbox

    ...), o comando poderá ser:

           

    [root@locutus]:~# make xconfig

    Se, por algum motivo, você quiser apagar todas as configurações deste novo

    kernel, antes de entrar com o comando acima, digite (em /usr/src/linux):

    [root@locutus]:~# make mrproper

    Isto apagará a configuração anterior do kernel no sistema.

    Geralmente, este passo não é necessário em compilações normais.

    Em seguida, novamente:

    [root@locutus]:~# make menuconfig (ou make xconfig, se for o caso)

    Já nas telas de configuração do novo kernel, é possível selecionar as

    opções desejadas

    referentes aos recursos que se deseja implementar.

    Este é o momento de carregar as configurações do arquivo anteriormente

    salvo. Escolha a opção

    "Load ..."

    na tela principal do programa de configuração, e aponte o caminho e o

    nome do arquivo salvo. As opções de configuração do kernel anterior serão

    carregadas.

    Após fazer as alterações desejadas, é hora de salvar o kernel e sair

    novamente para o console.

    Aqui começa a compilação de seu novo kernel.

    COMPILANDO

    Novamente no prompt, é hora de compilar o novo kernel. Para isso, digite:

    [root@locutus]:~# make dep

    É normal este comando demorar alguns minutos, dependendo da velocidade da

    máquina.

    Depois:

    [root@locutus]:~# make clean

    Este comando é mais rápido que o anterior. Quando o prompt for liberado,

    digite:

    [root@locutus]:~# make bzImage

    Isto construirá a nova imagem do kernel, em /usr/src/linux/arch/i386/boot,

    em um arquivo chamado bzImage.

    Os comandos acima criaram as dependências necessárias, limparam arquivos

    temporários e de instalação e criaram a imagem compactada do novo kernel.

    Após algum tempo (que varia de acordo com a máquina), a imagem é gerada

    e gravada no diretório acima referido.

    Vá agora para o diretório /lib/modules.

    O comando ls dá a listagem do conteúdo:

    [root@locutus]:~# cd /lib/modules

    [root@locutus]:~# ls

       

    2.4.5

    Como visto, há um diretório com o nome do kernel anterior à esta nova

    compilação.

    Caso você esteja instalando um novo kernel, não é necessário alterá-lo,

    pois a instalação dos módulos, como veremos a seguir, criará uma nova

    árvore de diretórios aqui (no exemplo, 2.4.10).

    Entretanto, se você estiver realizando apenas uma recompilação de um

    kernel já instalado, será necessário renomear este diretório existente.

    [root@locutus]:~# mv 2.4.5 2.4.5-old

    [root@locutus]:~# ls

    2.4.5-old

    Isto feito, passemos à criação dos módulos.

    6. CRIANDO E INSTALANDO OS NOVOS MÓDULOS

    a. Retorne ao diretório de compilação:

    [root@locutus]:~# cd /usr/src/linux

    b. Digite os comandos:

    [root@locutus]:~# make modules

    Para construir os módulos selecionados na configuração do kernel.

    Depois:

    [root@locutus]:~# make modules_install

    Os comandos acima criarão e instalarão os novos módulos em /lib/modules.

    O trabalho de criação dos módulos pode demorar um pouco, dependendo do

    tipo de máquina (processador, RAM disponível, etc).

    INSTALANDO O NOVO KERNEL

    Após o prompt ser novamente liberado mova a imagem compactada do

    kernel, de /usr/src/linux/arch/i386/boot para o diretório raiz (/):

    [root@locutus]:~# mv /usr/src/linux/arch/i386/boot/bzImage /

    Vá para o diretório raiz, e renomeie o novo kernel recém compilado

    para um nome facilmente identificável:

    [root@locutus]:~# cd /

    [root@locutus]:~# mv bzImage vmlinuz-2.4.10

    O novo kernel, agora, terá o nome acima, vmlinuz-2.4.10.

    Observe que será necessário indicar ao LILO,  qual a imagem compactada

    que deverá ser inicializada no boot da máquina. Vá para /etc e edite o

    arquivo "lilo.conf":

    [root@locutus]:~# mcedit /etc/lilo.conf

    Meu lilo.conf se parece com isto:

    ---

    # LILO configuration file

    #

    # Start LILO global section

    boot = /dev/hda

    message = /boot/boot_message.txt

    prompt

    timeout = 20

    vga = normal

    image = /vmlinuz

     root = /dev/hda1

     label = Linux

     read-only

    # Linux bootable partition config ends

    ---

    Veja que apenas uma imagem pode ser inicializada. Para adicionar a nova

    imagem, na seção:

    #image = /vmlinuz

     root = /dev/hda1

     label = Linux

     read-only

    adicione mais uma entrada:

    image = /vmlinuz-2.4.10

     root = /dev/hda1

     label = Teste

     read-only

           

    O arquivo lilo.conf deve ficar assim:

    ---

    # LILO configuration file

    # generated by 'liloconfig'

    #

    # Start LILO global section

    boot = /dev/hda

    message = /boot/boot_message.txt

    prompt

    timeout = 20

    vga = normal

    image = /vmlinuz

     root = /dev/hda1

     label = Linux

     read-only

    image = /vmlinuz-2.4.10

     root = /dev/hda1

     label = Teste

     read-only

    # Linux bootable partition config ends

    ---

    Salve o arquivo lilo.conf. No prompt, digite:

    [root@locutus]:~# lilo

    para salvar as alterações. Você poderá ver:

    Added

    Linux *

    Teste

    indicando que a imagem vmlinuz-2.4.10 poderá ser inicializada no boot

    da máquina digitando-se "Teste" no prompt do lilo.

    Posteriormente você poderá eliminar a imagem antiga (vmlinuz) em "/" e

    deletar o diretório /lib/modules/2.4.5.

    Mas espere alguns dias, e observe se não ocorrem erros em módulos, e

    se todas as funcionalidades estão operantes (ppp, etc).

    Efetue um reboot na máquina, e a nova inicialização deverá apresentar

    Welcome to linux 2.4.10

    indicando que tudo correu como devia e o novo kernel está instalado.

    8. SE AS COISAS DEREM ERRADO

    Observe as mensagens de inicialização, à procura de alguma mensagem de

    erro.

    É possível voltar ao antigo kernel (no caso, 2.4.5) simplesmente

    desfazendo as alterações.

    Lembre-se que o label "Linux" no prompt do lilo inicializa a imagem

    que for necessária, a nova ou a antiga.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    O redhat 7.3 tem algum problema pra recompilar ?

    uso o arquivo de configuração config-2.4.18-3 como base para recompilar no menuconfig... para aproveitar as configurações do meu kernel... recompilo sem erros.. mas na hora q tá carregando o novo kernel na inicialização... trava tudo... tem uma mensagem dizendo q o kernel tá em panico ;-)

    panico tô é eu... hehehe... independente do q faço é do q retiro o problema é o mesmo...

    Só pra desencargo de consciência resolvi recompilar somente alterando o processador... pra minha surpresa... apareceu o mesmo problema... num artigo o morimoto fala q os kerneis do mandrake e conectiva podem ter problemas usando o gcc para recompilar... daí ele fala q é só usar um tal de kgcc... será q fazendo isso resolve ?

    Será q tem algum problema no pacote kernel-source do redhat 7.3 ?

    :(  :(  :(

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Eu recompilei o meu kernel exatamente como indicado e não tive problemas, depois atualizei para o 2.4.19 e também tudo correu certinho, o único problema foi que eu salvei as configurações do 2.4.18-3 e carreguei na configuração do 2.4.19 e tinha algumas coisas que o 2.4.18-3 não estava dando suporte nativo (ISDN e outras coisas), mas aí ativei e tudo se resolveu..... dá uma olhada de novo nos passos, de repente você esqueceu alguma coisa....

    falou....

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Na minha maquina tá complicado......toda vez que tento atualizar o kernel dá uns pau louco que só instalando o linux de novo pra resolver.....já num k62 400 que eu tenho aqui vai na boa.....

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    É melhor pedir para atualizar o sistema, assim permanece os arquivos de configuração ou na pior hipótese, reinstalar. Recompilar o kernel é sempre problemático e não se tem a garantia de que tudo irá funcionar como antes!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Guest PC-Explorer 2
  • Autor do tópico
  • <font color='#000000'>interessante...

    essae tá bem explicada nesse tópico!!

    inté+</font>

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    <font color='#000000'>comprovado q serve pro conectiva 8

    eu fiz do jeitim q ta ai e funcionou de boa</font>

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Guest PC-Explorer 2
  • Autor do tópico
  • <font color='#000000'>é... agora eu vou começar a fazer um kernel adaptado pro meu processador AMD, q é uma coisa...

    Duron já viu né...</font>

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    <font color='#000000'>parabens pelo topico!!

    tá super bem explicado, e funciona mt bem!!!

    tipo... uso o RH7.3...

    baixei o kernel 2.4.21 da net... alguem pode me dizer se ele é bom (melhor q o 2.4.18 q vem no RH)!? mais estavel?!

    ouvi falar q kernels com final impar (.21) sao meio instaveis, é preferivel pegar os kernels pares (.20 p. ex.)... isso é vero!??!?!?

    fiz o processo de compilação aqui, com o kernel 2.4.21 e funcionou deboa.... ficou até mais leve e rápido na inicialização.... só tem um problema...

    dps da recompilação, meu ADSL não funciona mais!!

    alguem tem alguma dica pra resolver isso!??

    valeu!

    t++

    :)</font>

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Guest PC-Explorer 2
  • Autor do tópico
  • <font color='#0000FF'>bicho... ***** meu slack aí...

    acho q fiz besteira...</font>

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    <font color='#000000'>muito bem explicado para compilar o kernel do Linux, valeu.</font>

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Guest CBral
  • Autor do tópico
  • Quem for compilar o kernel 2.6 agora tem que fazer uma pequena modificação o modutils, agora se chama module-init-utils, você tem que pegar o source e compilar depois e possivel compilar o kernel 2.6, [module-init-tools_3.0-pre9.orig.tar.gz] pegue esse pacote nessa pagina http://packages.debian.org/unstable/admin/module-init-tools , compile e você estara pronto pra usar o kernel 2.6

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    eu estou tentando estalar o kernel 2.6. Descompactei o arquivo e mandei a pasta para o deretóiro /usr/src. Tentei usar o comando make xconfig mas não deu certo.

    Vi que tem que ter um link com o nome linux para a pasta decompactada. Como funciona isso? Não é so descompactar a pasta e mandar ela para esse diretório?

    Explica melhor esse negócio do link!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Guest CBral
  • Autor do tópico
  • cd /usr/src

    tar jxvf linux-2.6.1.tar,bz2

    ln -s linux-2.6.1 linux

    cd linux

    make menuconfig, caso tenha instalado tk e tcl use make xconfig, se quiser uma opção de cada vez use so make

    quando sair use:

    make , no caso do 2.4.24 use make dep, make clean e make bzImage

    cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz

    make modules

    make modules_install

    caso use lilo make bzlilo

    init 6

    Eu recomendo pra quem ta começando no GNU/Linux usar o kernel 2.4.24, pois ele e mais fácil de configurar que o 2.6 devido algumas coisas que não foram totalmente resolvidas para desktop.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Eu consiguir atualizar o kernel do meu conectiva com base no explicado acima, porêm no mandrake estou com uma dúvida. Onde está a pasta com o kernel no mandrake? No conectiva está em /usr/src/linux.

    Desde já agradeço.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    só para esclarecer, o material do k0d31n3 ficou muito bom mesmo.

    Em poucas coisas, queria adicionar que:

    Quando estamos compilando com NOVO kernel, não perdemos o antigo (a não ser que se apague ou qualquer outra coisa do genero). Ou seja: tente compilar o seu kernel! Se aprende muito lendo os docs em geral. Procure no www.kernel.org por documentos originais.

    Ainda vale lembrar que apesar de muitas dists não estarem oficialmente com o kernel 2.6.x, ele já é estavel. Existem rpms com os kernels 2.6 para diversas dists, que facilitam o trabalho. Quem usa o yum, pode adicinar servidores que tambem instalam o kernel 2.6. Fica tranquilo daí.

    Foi só um toque, teh mais

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Pessoal,

    Simplesmente BEM EXPLICADO esse tópico parabéns,

    Apenas uma dúvida estou com um 'serio problema com o kernel-source (instalação com pau) dessa maneira não tenho como fazer um save das configurações do meu kernel 2.4.3 para fazer load no 2.6.3 e dessa maneira opções essenciais como QM_MODULES (que não faço a menor ideia de onde acho, e olha que procurei) não estão marcadas, Como fazer pra dar load ou resolver o problema

    Muito Obrigado

    Fernando

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Desculpe pessoal, estava verificando achei várias opções e informações, mas como visto em um tutorial de kernel era para ta marcado a opção _Loadable modules support:_ e a minha estava todas assim como o pcte instalado modutils e não funcionou o QM_MODULES está assim o meu kernel

    [*] Enable loadable module support

    │ │ [*] Module unloading

    │ │ [*] Forced module unloading

    │ │ [*] Module versioning support (EXPERIMENTAL)

    │ │ [*] Automatic kernel module loading

    Todas marcadas e também da erro quando tento via parte gráfica o make xconfig só da pra ir pelo make menuconfig, não me importo mas terá relação?

    Tenho o kernel 2.4.21 e tento compilar o 2.6.3 e o conectiva 9.0

    Muito Obrigado

    Fernando

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    OI!

    tenho o cl 8 e queria saber onde acho kernel pra baixar!

    obrigado!

    :bandeira:

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    segui todos os passos e compilei o kernel

    porém, o meu pc ainda da o boot no kernel antigo

    eu sei que devi alterar o arquivo lilo.conf mas o meu linux não tem esse arquivo.

    o mais proximo disso é lilo.conf.anaconca

    cujo corpo é o seguinte:

    prompt

    timeout=50

    default=DOS

    boot=/dev/hda

    map=/boot/map

    install=/boot/boot.b

    message=/boot/message

    lba32

    image=/boot/vmlinuz-2.4.20-8

    label=linux

    initrd=/boot/initrd-2.4.20-8.img

    read-only

    append="hdc=ide-scsi root=LABEL=/"

    other=/dev/hda1

    optional

    label=DOS

    o que eu devo fazer para rodar o novo kernel?

    []s

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário

    Entre para seguir isso  





    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×