Os núcleos fornecidos pelo Debian incluem o maior número de recursos possível, assim como o máximo de drivers, para cobrir o mais amplo espectro de configurações de hardware. É por isso que alguns usuários preferem recompilar o núcleo, e assim, incluir apenas o que eles precisam especificamente. Existem duas razões para essa escolha. Primeiro, talvez seja para otimizar o consumo de memória, já que o código do núcleo, mesmo nunca sendo usado, ocupa memória para nada (e nunca "cai" no espaço swap, já que é a RAM real que ele usa), o que pode comprometer o desempenho de todo o sistema. Um núcleo compilado localmente pode também limitar o risco com problemas de segurança já que apenas uma fração do código do kernel é compilado e rodado. Show
A recompilação do kernel também é necessária se você quer usar certas características que só estão disponíveis através de patches (e portanto não incluídas na versão padrão do kernel). 8.10.1. Introdução e Pré-requisitosObviamente o Debian gerencia o núcleo na forma de pacote, que não é como os núcleos tem sido tradicionalmente compilados e instalados. Como o núcleo se mantém no controle do sistema de empacotamento, ele pode ser removido de maneira limpa, ou implantado em várias máquinas. Além do mais, os scripts associados com esses pacotes automatizam a interação com o carregador de inicialização e o gerador de initrd. Os fontes do desenvolvedor principal do Linux contém tudo o que é necessário para construir um pacote Debian do núcleo. Mas você ainda precisa instalar o build-essential para garantir que você tem as ferramentas necessárias para construção de um pacote Debian. Além do mais, a etapa de configuração do núcleo requer o pacote libncurses5-dev. E finalmente, o pacote fakeroot irá permitir a criação de um pacote Debian sem usar os direitos de administrador. 8.10.2. Pegando os Fontes Like anything that can be useful on a Debian system, the Linux kernel sources are available in a package. To retrieve them, just install the linux-source-version package. The The remainder of this section focuses on the 4.9 version of the Linux kernel, but the examples can, of course, be adapted to the particular version of the kernel that you want. We assume the linux-source-4.9
package has been installed. It contains
8.10.3. Configurando o NúcleoO próximo passo consiste da configuração do núcleo de acordo com suas necessidades. O procedimento exato depende dos objetivos. Quando recompilamos uma versão mais recente do núcleo (possivelmente com um patch adicional), a configuração, provavelmente, será mantida o mais próximo possível daquela proposta pelo Debian. Nesse caso, e ao invés de reconfigurar tudo a partir do zero, será suficiente copiar o arquivo
A menos que você precise mudar a configuração, você pode parar por aqui e pular para Seção 8.10.4, “Compilando e Construindo um Pacote”. Se você precisa mudá-la, por outro lado, ou se você decidir reconfigurar tudo a partir do zero, você precisa dedicar um tempo para configurar seu núcleo. Existem varias interfaces dedicadas no diretório do fonte do
núcleo que podem ser usadas executando o comando 0 Outras interfaces tem características semelhantes, mas elas trabalham com interfaces gráficas mais modernas; como a Ao usar uma dessa interfaces de configuração, sempre é uma boa ideia iniciar a partir de uma configuração padrão
razoável. O núcleo prove tais configurações em 8.10.4. Compilando e Construindo um Pacote Uma vez que a configuração do núcleo esteja pronta, um simples A versão é definida pela concatenação da versão do upstream (como definido pelas variáveis
8.10.5. Compilando Módulos ExternosAlguns módulos são mantidos fora do núcleo Linux oficial. Para usá-los, eles devem ser compilados a parte do referido núcleo. Um número de módulos de terceiros comuns são fornecidos pelo Debian em pacotes dedicados, tais como o xtables-addons-source (môdulos extra para o iptables) ou oss4-source (Open Sound System, alguns drivers de áudio alternativos). Esses pacotes externos são muitos e variados e nós não vamos listar todos aqui; o comando Por exemplo, vamos dar uma olhada no pacote xtables-addons-source: após a instalação, um
8.10.6. Aplicando um Patch ao NúcleoAlguns recursos não são incluídos no kernel padrão devido a falta de maturidade ou algum desentendimento entre os mantenedores do kernel. Tais recursos podem ser distribuídos através de patches, e assim, qualquer um está livre para aplicá-los aos fontes do kernel. Debian sometimes provides some of these patches in linux-patch-* packages but they often don't make it into stable releases (sometimes for the very same reasons that they are not merged into the official upstream kernel). These packages install files
in the Para aplicar um ou mais desses patches instalados, use o comando
Note que um patch(qualquer um) talvez não necessariamente funcione com todas as versões do núcleo; é possível que o Como se cria um kernel?Como fazer o download de origens e ferramentas de build. mkdir android-kernel && cd android-kernel.. repo init -u https://android.googlesource.com/kernel/manifest -b BRANCH.. repo sync. ... . build/build.sh Observação: os kernels comuns são genéricos e personalizáveis, então eles não definem uma configuração padrão.. O que é compilar o kernel?Devido a isso, é possível a compilar o kernel. Durante esse processo, os usuários terão a possibilidade de configurar o núcleo de sistema de acordo com suas necessidades, desabilitando opções que não utilizam ou que não são tão necessárias, logo, após finalizada a compilação, haverá ganho de desempenho na máquina.
Como compilar kernel Debian?Para compilar um kernel à maneira Debian, necessita de alguns pacotes: fakeroot , kernel-package , kernel-source-2.6 e mais alguns que provavelmente já estarão instalados (veja /usr/share/doc/kernel-package/README. gz para a lista completa).
Qual a versão do kernel que roda no sistema operacional?Para saber a versão do kernel, use o comando uname. É também possível descobrir a versão do kernel olhando o arquivo /proc/version. Neste caso, temos a distribuição Ubuntu com o kernel Linux 4.15. O kernel não sofreu qualquer correção de erro, mas a distribuição Ubuntu teve 45 correções.
|