Corrigindo o kernel com um número de versão customizado e tê-lo listado no grub [closed]

0

Alterou a pergunta para ser mais específica, na esperança de que seja reaberta.

No Ubuntu, como se aplica um patch (usando o comando patch ) para aplicar um patch a um kernel (este patch , fazer com que o btrfs aceite o meu disco de substituição , de todas as coisas). Eu encontrei na web e aqui algumas instruções ( BuildYourOwnKernel do Ubuntu ), mas não a receita completa que estou procurando. Com essa pergunta, espero que alguém forneça uma receita fácil para todos seguirem. A seguir, o que é necessário:

  • Como buscar a origem do kernel atualmente em execução.

  • Como aplicar o patch nele.

  • Como compilá-lo usando a configuração que é normalmente usada para minha distribuição.

  • Como mudar a versão do kernel, para que eu possa instalá-lo sem substituindo o atual kernel oficial. Adicionando '-tmp' ou algumas iniciais para diferenciá-lo do oficial, se possível.

  • Como obter o grub, reconheça o kernel recém-construído e mostre-o em seu menu, mas não tendo que carregá-lo por padrão; funcionário anterior O kernel deve ser carregado por padrão. Eu quero selecionar explicitamente meu kernel personalizado.

  • Como reiniciar o sistema, como na reinicialização, o grub permite selecionar o kernel para inicializar.

  • Uma vez terminado meu uso para o kernel, como remover todos os vestígios dele do sistema de arquivos e do grub.

por Hans Deragon 24.02.2017 / 09:53

1 resposta

1

Você precisará ser o usuário root para a maior parte / tudo isso, então use

sudo -i

Instale alguns utilitários e bibliotecas -

apt-get install build-essential fakeroot kernel-package libncurses5-dev zlib1g-dev libssl-dev xz-utils

Em seguida, extraia a árvore de código-fonte do kernel, corrija-a e (talvez) copie uma configuração funcional de / boot para /path/to/source/.config

Em seguida, configure o kernel com

make oldconfig

ou

make menuconfig

Uma vez configurado, construa-o. O comando de compilação é onde você acrescenta a versão -

make-kpkg clean 
fakeroot make-kpkg --initrd --append-to-version=-MyPatchedKernel kernel_image kernel_headers

Isso gerará 2 arquivos deb para você - um para o kernel, um para cabeçalhos. Se você está trabalhando em / usr / src / linux, então os arquivos deb estarão em / usr / src. Instale-os usando o dpkg e você deve estar pronto.

    
por 24.02.2017 / 21:09