Translation(s): English - Italiano


Questa pagina descrive la compilazione di un nuovo kernel basato sui sorgenti originali.

A chi è rivolta questa pagina?

Se si desidera semplicemente applicare alcuni cambiamenti di configurazione o patch ad un kernel che è già in Debian, dovrebbe essere molto più facile seguire altre guide come Come ricompilare un pacchetto kernel ufficiale Debian.

Questa pagina è necessaria solamente se, per esempio, si ha bisogno di funzionalità non fornite dal kernel più recente tra quelli già pacchettizzati per Debian.

Vedere anche

Vedere anche DebianKernelCustomCompilation e Come ricompilare un pacchetto kernel ufficiale Debian, che, a dispetto del suo nome, sembra affrontare problemi simili.

Cosa fare

La fonte autorevole per informazioni sulla compilazione dei kernel Debian è il manuale Kernel Handbook. La sezione rilevante è http://kernel-handbook.alioth.debian.org/ch-common-tasks.html#s-kernel-org-package .

Verificare la firma

Io non riesco a verificare la firma con successo: non sono sicuro su come dovrei ottenere la chiave pubblica. L'installazione di vari pacchetti -keyring non è stata d'aiuto:

 arnouten@jaga:~/dev/kernel$ gpg --verify linux-2.6.34.tar.bz2.sign 
 gpg: Signature made Sun 16 May 2010 11:43:56 PM CEST using DSA key ID 517D0F0E
 gpg: Can't check signature: public key not found

Suggerimento: è necessario prima importare la chiave (517D0F0E):

 $ gpg --recv-keys 517D0F0E
 gpg: requesting key 517D0F0E from hkp server keys.gnupg.net
 gpg: key 517D0F0E: public key "Linux Kernel Archives Verification Key <ftpadmin@kernel.org>" imported
 gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
 gpg: depth: 0 valid: 2 signed: 1 trust: 0-, 0q, 0n, 0m, 0f, 2u
 gpg: depth: 1 valid: 1 signed: 1 trust: 0-, 0q, 0n, 0m, 1f, 0u
 gpg: depth: 2 valid: 1 signed: 0 trust: 1-, 0q, 0n, 0m, 0f, 0u
 gpg: Total number processed: 1
 gpg: imported: 1

Configurazione

Per avere un buon punto di partenza per la configurazione, è comodo prendere una configurazione da una versione precedente del kernel (cp /boot/config-... ./.config), e poi eseguire make oldconfig. Questo crea una configurazione per il kernel nuovo, prendendo impostazioni predefinit dalla configurazione del kernel più vecchio fornita. Tutte le nuove opzioni verranno chieste: di solito io seguo le scelte predefinite.

Compilare il kernel

Ora si può seguire la procedura descritta nel manuale in http://kernel-handbook.alioth.debian.org/ch-common-tasks.html#s-common-building