Um dos elementos mais fundamentais em qualquer distribuição Linux é o kernel e, embora já tenhamos ouvido falar dele, em muitas ocasiões não sabemos com certeza qual o papel que ele desempenha no sistema.
O kernel Linux é basicamente o componente central do sistema operacional GNU / Linux, e sua função está ligada ao gerenciamento dos recursos de hardware do computador como CPU, memória e discos rígidos, oferecendo assim o melhor aproveitamento destes recursos, e em da mesma forma com o kernel, os drivers são fornecidos para dispositivos que estão conectados a diferentes barramentos de sistema, como USB, PCI, SATA ou IDE.
Por questões de administração ou controle, em alguns casos específicos, podemos recorrer a um kernel Linux compilado de forma personalizada, a fim de habilitar ou desabilitar funções específicas do referido Kernel, que não estão disponíveis por padrão no kernel de distribuição. Para fazer isso, o Solvetic explicará em detalhes como compilar e usar o kernel Linux mais recente retirado das fontes do CentOS 7.
1. Como instalar os pacotes necessários para compilar Kernel Linux CentOS 7
Primeiro, vamos atualizar os repositórios dos pacotes de software, prosseguir com a instalação das ferramentas de desenvolvimento necessárias para compilar um kernel e instalar a biblioteca ncurses com o comando yum da seguinte maneira:
yum update yum install -y ncurses-devel make gcc bc bison flex elfutils-libelf-devel openssl-devel grub2
2. Como compilar e instalar o kernel Linux CentOS 7
O próximo passo é baixar as fontes do kernel 4.17 mais recentes usando o comando wget no diretório / usr / src / ou, alternativamente, baixar o kernel mais recente visitando o seguinte link:
ObservaçãoA versão estável no momento é 4.17.11.
Passo 1
Primeiramente, acessamos o diretório indicado:
cd / usr / src /Em seguida, baixamos o kernel executando:
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.11.tar.xz
Passo 2
Prosseguimos para extrair os arquivos compactados e modificar os diretórios usando os seguintes comandos:
tar -xvf linux-4.17.11.tar.xz
Agora acessamos o diretório do kernel da seguinte maneira:
cd linux-4.17.11 /
3. Como configurar o kernel Linux no CentOS 7
Passo 1
O Kernel para CentOS 7 deve ser configurado corretamente com as seguintes opções de configuração exigidas no ambiente do sistema:
CONFIG_KVM_GUEST = e CONFIG_VIRTIO_PCI = e CONFIG_VIRTIO_PCI_LEGACY = e CONFIG_BLK_DEV_SD CONFIG_SCSI_VIRTIO = e CONFIG_VIRTIO_NET = e CONFIG_SERIAL_8250 = e CONFIG_SERIAL_8250_CCY =Agora vamos copiar a configuração do kernel em execução (.config) do diretório / boot para o novo kernel Linux-4.17.11 da seguinte maneira:
cp -v /boot/config-3.10.0-693.5.2.el7.x86_64 /usr/src/linux-4.17.11/.configAgora vamos executar o comando make menuconfig para configurar o kernel do Linux, e assim que o comando for executado, uma janela pop-up com todos os menus do kernel será exibida, onde será possível habilitar ou desabilitar certos recursos do kernel e se quisermos sair, basta pressionar a tecla ESC para sair do assistente.
Passo 2
Será apresentado o seguinte assistente, onde definiremos os parâmetros que considerarmos necessários.
etapa 3
Quando fazemos as alterações desejadas, selecionamos a opção Salvar para aplicar essas alterações e veremos o seguinte. Selecionamos "Ok" para finalizar o processo.
Passo 4
O seguinte será exibido, clique em "Sair" para sair do assistente.
4. Como compilar o kernel no CentOS 7 (Linux)
Antes de iniciar o processo devemos validar o espaço livre no sistema de arquivos, para isso executamos o seguinte:
df -h
Agora vamos compilar e instalar o kernel e os módulos com os seguintes comandos, isso pode levar um tempo considerável, o processo de compilação aloca os arquivos no diretório / boot e cria uma nova entrada do kernel no arquivo grub.conf:
make bzImage make modules make install make modules_install
Assim que este processo for concluído, iremos reinicializar o sistema e verificar o novo kernel executando o seguinte:
uname -sr
Desta forma, aprendemos a compilar o kernel Linux no CentOS 7.