Compilação do Kernel utilizando CentOS 7

Iniciado por elianbatista, 20 de Maio de 2019, 18:54

tópico anterior - próximo tópico

elianbatista

Para visualizar esse tutorial com imagens, acesse meu blog  8) 8) 8).
https://elianbatista.blogspot.com/2019/05/tutorial-de-compilacao-do-kernel-do.html

Tutorial de Compilação do Kernel
Aluno: Elian Lima Batista

1 - Download da distribuição LINUX.
Primeiramente, iremos utilizar neste tutorial a distribuição CentOS em sua versão 7, então faça o download dela no site: https://www.centos.org/
Basta ir em "Get CentOS Now", e será redirecionado para a seguinte página:

Foi feito o download por mim utilizando o torrent, mas aqui fica a seu critério, o importante é que não seja feito o download da versão minimal pois a mesma vem com menos funções que poderão atrapalhar no decorrer do nosso tutorial.




2 - Instalação da Máquina Virtual
Agora devemos fazer o download da máquina virtual para podermos estar fazendo a instalação do CentOS, a máquina virtual que utilizarei neste tutorial é a "VirtualBox" pelo simples motivo de ser a que eu já tenho mais afinidade. Entre no site: https://www.virtualbox.org/

Clique em "Download VirtualBox 6.0". Você será direcionado para a seguinte tela:

Em "Platform packages" clique na opção que represente seu sistema operacional, no meu caso aqui estou usando o Windows, então que cliquei em "Windows Hosts", depois disso seu download deve começar.
Depois de baixado, execute o .exe, e deverá chegar nessa tela:

Daqui para frente só ir clicando em "Next" para fazer a instalação, nenhuma configuração deverá ser modificada.




E começará a instalação, pode ser que o processo leve alguns minutos, dependerá so seu computador.

3 - Criação da Máquina Virtual
Após a instalação da "VirtualBox", execute ela:

Agora vamos ir em "Máquina", e em "Novo".

A seguinte tela deverá aparecer:

Dê um nome para a maquina virtual, selecione a pasta onde será salvo os arquivos, selecione o tipo e a versão do sistema operacional, a minha configuração ficará da seguinte forma:

Basta escrever CentOS no nome que o próprio Virtual Box já identifica o tipo e a versão do sistema operacional. Clicando em próximo deveremos chegar na tela de "Tamanho de Memória".

Como eu só possuo 4Gb de memória, deixarei 1 giga para a máquina acredito ser mais do que o suficiente, pois rodaremos o CentOS em modo texto. Na prxima tela selecione a opção "Criar um novo disco rígido virtual agora", e clique em "Criar.

Agora selecione o formato do arquivo de disco rígido, pode deixar o padrão mesmo que é VDI.

Na próxima tela para o tipo de armazenamento marque a opção "Tamanho Fixo", para que possamos definir o tamanho máximo que a máquina usará do nosso HD.

Agora você pode selecionar onde será salvo o arquivo de disco rígido, eu deixei a pasta padrão mesmo mas caso queira mudar fique a vontade, selecione também o tamanho máximo do arquivo, eu coloquei 50 Gb, como eu disse antes vamos rodar um Sistema em modo texto, então acredito que 50 seja mais do que o suficiente. Clique em "Criar".

O processo deverá começar, basta aguardar agora.

4 - Instalar o CentOS na máquina virtual
Após a criação da máquina, inicie ela:

Por estarmos iniciando a máquina pela primeira vez será solicitado um driver de disco óptico que deverá conter o sistema para instalação.

Clique na pastinha do lado de "Vazio" e selecione a .iso do CentOS que foi baixada.

Após isso, clique em iniciar.


Selecione a opção "Install CentOS 7", a seguinte tela aparecerá após alguns segundos:











Selecione Português e depois Português(Brasil) e clique em continuar.

Na próxima tela, vamos primeiro configurar o armazenamento

Em sistema, clique em destino instalação.

Nesta tela verifique se o HD que criamos ao criar a máquina virtual ta selecionado e vamos em finalizado lá em cima.

Agora vamos ir em "Seleção de Software", e trocar de Minimal Install para Infraestrutura.

E depois em finalizado, novamente.

Agora vamos configurar a rede, basta clicar em rede

E ligar ela lá em cima no canto direito em baixo de ajuda, pronto, a rede deve funcionar. Depois clique em finalizado e comece a instalação.

Vamos agora, enquanto acontece a instalação definir a senha de root. Clique eu "Senha Raiz".

Defina a senha que quiser e clique em "Finalizado", caso seja uma senha fraca será necessário clicar duas vezes em finalizado. Agora só aguardar a instalação.

Após o término do processo, faça a reinicialização da máquina.
Após reiniciar, a seguinte tela deverá aparecer caso tudo tenha ocorrido bem, de enter na primeira opção.

Após o boot, o CentOS pedirá o login e a senha, digite root em login, e na senha coloque a senha que foi definida para o root no passo anterior. Pronto a máquina virtual já está pronta para ser utilizada, o que nos leva ao passo mais importante desse tutorial que é a compilação do kernel.

5 - Compilação do Kernel

Estando no terminal, logado no root, vamos digitar o seguinte comando para atualizar a lista de pacotes:
#yum update

Durante a execução do comando, algumas vezes será perguntado se deseja continuar, basta colocar "s" de sim ou "y" de yes no terminal e apertar enter todas as vezes. O processo deve demorar um pouco então não esquenta. Após o término iremos agora fazer a instalação dos pacotes necessários para a compilação do kernel usando o seguinte comando:
# yum install gcc bison ncurses-devel make gcc-c++ git openssl-devel

Aperte enter para começar o processo, da mesma forma do comando anterior pode ser que seja perguntado se está tudo ok.

Basta colocar um "y" de yes no terminal e dar enter.
Agora o próximo passo é obter os fontes do kernel usando o seguinte comando:
# wget https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.1.tar.gz

Basta dar enter para começar o download.

Se a seguinte tela aparecer o download estará sendo realizado, basta aguardar alguns minutos.
Após o término para verificar se tudo deu certo utilize o comando ls, o arquivo deverá linux-5.1.tar.gz deverá aparecer.

Agora, vamos mover-lo para a pasta /usr/src/kernels com o seguinte comando:
# mv linux-5.1.tar.gz /usr/src/kernels/
Após mover-lo, vamos navegar até a pasta a qual o movermos usando o comando:
# cd /usr/src/kernels/
Dê novamente um ls para confirmar que está tudo certo

Se o seu arquivo estiver ali, vamos continuar.
Agora precisamos descompactar o arquivo, vamos usar o comando a seguir:
# tar -xzvf linux-5.1.tar.gz

Dê um ls novamente após o processo para ver se está tudo ok.

Agora vamos criar uma string de extraversion usando o comando:
# date +"-%Y%m%dc1"

Agora vamos editar o arquivo Makefile que vai estar dentro da pasta que foi criada após a extração, acesse ela usando o comando cd Linux-5.1, e colocar aquela string que apareceu ali lá dentro em 'EXTRAVERSION", digite o comando:
# vim Makefile
Deverá ficar da seguinte forma:


Após digitar, aperte Esc, dois pontos, digite wq e de enter para sair e salvar o arquivo.
Agora antes de começar a compilar o kernel, vamos limpar o diretório de fonte do kernel usando o comando:
# make mrproper

Agora com o comando a seguir poderemos editar as configuração do kernel
# make menuconfig
A seguinte tela deve aparecer

Vamos ir em Device Drivers, depois em Multimidia Support, para fazermos algumas alterações de coisas inúteis para nós.

1 Alteração - Vamos remover o "Analog TV Support", visando melhorar o desempenho já que não iremos utilizar nada relacionado a TV Analógica.










2 Alteração - Vamos remover o "Digital TV Support" pelo mesmo motivo da alteração anterior.

3 Alteração - Agora vamos voltar em Device Drivers novamente e vamos remover o "Macintosh device drivers", pois não iremos utilizar nada relacionado ao mac.

4 Alteração - Ainda em Device Drivers vamos remover o Sony MemoryStick, visando que não é necessário o suporte a memorystick da sony nesse kernel.

5 Alteração - Ainda em Device Drivers vamos habilitar o "Acessibility support" para permitir que dispositivos de entrada e saída para pessoas com deficiências sejam compatíveis.

6 Alteração - Ainda em Device Drivers vamos habilitar o "Virtualization Drivers" que permite o melhor desempenho na execução de dispositivos virtuais.
Fonte: https://cateee.net/lkddb/web-lkddb/VIRT_DRIVERS.html

7 Alteração - Ainda em device drivers agora vamos habilitar o "Memory Controller Drivers"

8 Alteração - Em Device Drivers vamos ir em Input Device Supports, vamos desabilitar o "Joystick interface"

9 Alteração - Vamos desabilitar agora o "Tablets"

10 Alteração - Vamos desabilitar agora o "Touchscreens"

Devo informar que todas as alterações que não possuírem fontes, para serem feitas foi necessário consultar o menu ajuda do próprio kernel onde possuía todas as informações corretamente de todas as funções.
Pronto, após isso vamos sair e salvar todas as alterações. De volta ao terminal vamos de fato compilar o kernel usando o comando
# make -j2
Agora irá demorar um pouco o processo. Após o término vamos dar o comando:
# make modules_install
Para fazermos as instalações dos modulos e gerarmos a imagem.

E por último vamos dar o comando a seguir para de fato instalarmos o kernel.
# make install

Pronto, após aparecer essa tela está tudo certo, de um reboot em sua máquina virtual e aproveite seu novo kernel.