Aqui estão os passos. Este procedimento é baseado em Como: Compilar o kernel 2.6 do nixCraft - mas modernizado consideravelmente.
Faça o download e extraia o código fonte do kernel que você deseja construir.
Você pode obter o código-fonte upstream do kernel em kernel.org . A versão 3.16.1 (o último kernel estável até o momento da redação deste documento) será usada aqui. Portanto, pode ser necessário modificar esses comandos se você estiver usando uma versão diferente.
O código fonte do kernel é atualmente fornecido em. alcatrão . arquivos xz , clique no link "tar.xz" da versão que desejar:

Após cdacessar o diretório em que você baixou o arquivo, é possível extraí-lo com tar:
tar xf linux-3.16.1.tar.xz
Instale as ferramentas de construção necessárias e execute a configuração do kernel.
Para obter o conjunto de ferramentas do Ubuntu ( gcc, makee assim por diante), instale o metapacote essencial
da compilação :
sudo apt-get update
sudo apt-get install build-essential
Duas maneiras razoavelmente fáceis de usar para configurar o que entra no seu kernel são fornecidas pelos makedestinos xconfige menuconfig.
xconfigexecuta um utilitário de configuração gráfica, enquanto menuconfigé baseado em texto (ou seja, sua interface aparece totalmente dentro do seu terminal). Cada um requer algum software adicional não fornecido pelo essencial da compilação
.
Para configurar graficamente , instale libqt4-dev
e pkg-config
e executemake xconfig:
sudo apt-get install libqt4-dev pkg-config
make xconfig
Para configurar no terminal , instalelibncurses5-dev(obrigado a Hannu por esta informação) e executemake menuconfig:
sudo apt-get install libncurses5-dev
make menuconfig
Crie o kernel configurado.
Primeiro, execute isso para compilar o kernel e criar vmlinuz:
make
vmlinuzé "o kernel". Especificamente, é a imagem do kernel que será descompactada e carregada na memória pelo GRUB ou qualquer outro carregador de inicialização que você usar.
Em seguida, construa os módulos carregáveis do kernel :
make modules
Instale seu kernel recém-construído.
Supondo que esses makecomandos foram concluídos com sucesso, é hora de instalar o novo kernel. Primeiro instale os módulos:
sudo make modules_install
Em seguida, instale o próprio kernel :
sudo make install
Isso coloca vmlinuz-3.16.1(uma cópia de vmlinuz), config-3.16.1(um arquivo de texto que armazena os parâmetros de configuração do kernel) e System.map-3.16.1(a tabela de pesquisa de símbolos do kernel ) /boot. Para mais detalhes, consulte esta publicação comp.os.linux.misc de Hadron e man installkernel.
Configuração final, para que o kernel possa ser iniciado e inicialize o sistema:
Esta seção é parcialmente baseada nas informações do Kernel / Compile .
Com o kernel agora onde precisa estar, ele precisa:
Gere seus initramfs commkinitramfs:
cd /boot
sudo mkinitramfs -ko initrd.img-3.16.1 3.16.1
Quando você atualiza a configuração do carregador de inicialização GRUB2 - que é o padrão no Ubuntu desde 9.10 - deve detectar automaticamente o novo kernel e adicionar uma opção para inicializá-lo.
sudo update-grub
Experimente o seu kernel.
Agora você pode reiniciar para testar seu novo kernel. Pode ser necessário manter pressionado Shiftou pressionar Escdurante a inicialização para ver o menu de inicialização do GRUB, onde você pode selecionar entre os diferentes kernels instalados.
Para tornar seu kernel (ou outro) o padrão, consulte Como altero a ordem de inicialização do GRUB?