Pagina inicial » como » Como personalizar o seu kernel do Ubuntu

    Como personalizar o seu kernel do Ubuntu

    A personalização do kernel não é para todos. Por favor, note antes de tentar nada disso que pode quebrar o seu sistema.

    Há um monte de razões que você gostaria de personalizar seu kernel. Você pode querer reduzir o seu kernel para apenas os serviços necessários, especialmente se você estiver executando um servidor ou dispositivo dedicado que requer apenas o essencial. Você também pode precisar corrigir seu kernel para suportar hardware que atualmente não é suportado com o kernel em que você está rodando..

    Este artigo não explica como corrigir seu kernel, apenas como personalizar seu atual. Vou ter outro artigo de acompanhamento que explica como corrigir o seu kernel e algumas razões práticas pelas quais você gostaria de fazer isso.

    Para começar, precisamos descobrir qual versão do kernel estamos executando atualmente. Nós vamos usar o comando uname para isso

    $ uname -r

    2.6.17-10 genérico

    Agora precisamos instalar o fonte linux para o seu kernel, note que eu estou rodando o kernel 2.6.17-10, então a linha do instalador reflete isso. Para os propósitos deste artigo, você pode substituir o número do kernel pelo que estiver executando. Nós também precisamos instalar a biblioteca curses e algumas outras ferramentas para nos ajudar a compilar.

    sudo apt-get instala o linux-source-2.6.17 kernel-pacote libncurses5-dev fakeroot

    Se você está curioso para saber onde o código fonte do linux é instalado, você pode usar o comando dpkg para informar os arquivos dentro de um pacote. Aqui está a saída no meu sistema:

    $ dpkg -L linux-source-2.6.17
    /.
    / usr
    / usr / src
    /usr/src/linux-source-2.6.17.tar.bz2
    / usr / share
    / usr / share / doc
    /usr/share/doc/linux-source-2.6.17
    (aparado)

    Podemos ver que a fonte foi instalada no diretório / usr / src em um arquivo zipado.

    Para facilitar as coisas, vamos nos colocar no modo raiz usando o sudo para abrir um novo shell. Há outras maneiras de fazer isso, mas eu prefiro assim.

    sudo / bin / bash

    Agora mude o diretório para o local de origem para que possamos instalar. Note que você pode precisar instalar o utilitário bunzip se ele não estiver instalado. (foi no meu)

    cd / usr / src

    bunzip2 linux-source-2.6.17.tar.bz2

    tar xvf linux-source-2.6.17.tar

    ln -s linux-source-2.6.17 linux

    Faça uma cópia da sua configuração de kernel existente para usar no processo de compilação personalizado. Note que o 'personagem é aquele abaixo do til ~

    cp / boot / config-'uname -r '/usr/src/linux/.config

    Agora vamos lançar o utilitário que nos permitirá personalizar o kernel:

    cd / usr / src / linux

    fazer menuconfig

    Primeiro, vá até Carregar um arquivo de configuração alternativa e carregue o arquivo .config. (apenas aperte enter)

    Agora que estamos dentro do utilitário, podemos definir as opções para o nosso kernel personalizado. A navegação é bem simples, há uma lenda no topo se você se perder. Eu decidi selecionar Networking e pressione a tecla Enter para entrar nessa categoria.

    Suporte de rádio amador? O que diabos é isso para instalar? Você notará pelo * que está embutido no kernel.

    Ao pressionar o? chave, podemos ver a ajuda para esse item em particular. Aqui está a explicação:

    Bem, vou desabilitar isso imediatamente. Por que diabos isso é instalado no meu kernel? Eu apertei Esc para sair da tela de ajuda, e então pressione N para excluir isso do meu kernel.

    Quando terminar de fazer as escolhas desejadas, pressione Sair e salve a configuração quando solicitado..

    Agora temos uma configuração pronta para compilar. Primeiro faremos uma limpeza, só para ter certeza de que tudo está pronto para a compilação.

    make-kpkg limpo

    Em seguida, vamos realmente compilar o kernel. Isso vai demorar um tempo muito lento, então vá encontrar algo interessante para fazer.

    fakeroot make-kpkg -initrd -append-to-version = -custom kernel_image kernel_headers

    Este processo irá criar dois arquivos .deb em / usr / src que contêm o kernel. O arquivo linux-image **** é a imagem real do kernel, e o outro arquivo contém o arquivo Você pode instalar ambos com o dpkg. Os nomes dos arquivos provavelmente serão diferentes em seu sistema.

    Por favor note que quando você executa estes próximos comandos, isto irá definir o novo kernel como o novo kernel padrão. Isso poderia quebrar as coisas! Se sua máquina não inicializar, você pode clicar em Esc no menu de carregamento do GRUB e selecionar seu kernel antigo. Você pode então desabilitar o kernel em /boot/grub/menu.lst ou tentar compilar novamente.

    dpkg -i linux-image-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb

    dpkg -i linux-headers-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb

    Agora reinicie sua máquina. Se tudo funcionar, você deve estar executando seu novo kernel personalizado. Você pode verificar isso usando uname. Observe que o número exato será diferente em sua máquina.

    uname -r

    2.6.17.14-ubuntu1-custom

    Eu planejo escrever uma série de artigos sobre personalização de kernel, então inscreva-se no feed RSS para atualizações.

    Além disso, no interesse da divulgação completa, aprendi como fazer isso a partir do artigo no HowtoForge, que é um ótimo site para alguns tutoriais muito avançados sobre o Linux. Você notará que muitas das etapas deste artigo são semelhantes, embora eu tenha tentado tornar este artigo mais "Ubuntu".