Salve community, in questa guida vi spiegherò come e perché compilare il kernel vanilla e ottimizzarlo per il vostro hardware su ubuntu.
Il kernel vanilla è il kernel linux ufficiale rilasciato da Linus Torvalds e dal suo team di sviluppatori senza patch e modifiche aggiuntive che disolito fanno gli sviluppatori delle distro per aggiungere funzionalità (buone o non buone) o supporto per un determinato hardware, quindi in sintesi il kernel vanilla è più leggero e pulito.
Il kernel vanilla si può scaricare dal sito www.kernel.org dove esistono delle sezioni: Prepatch, Mainline, Stable e Longterm.
- Il kernel nella sezione stable è l’ ultima versione stabile, funzionate e supportata.
- Il kernel nella sezione prepatch è la versione che sta per essere rilasciata che contiene tutte le nuove funzionalità che devono essere ancora testate.
- Il kernel nella sezione mainline è il kernel in via di sviluppo dove vengono progettate e programmate le nuove funzionalità, ovviamente destinato agli sviluppatori del kernel e non agli utenti.
- Il kernel nella sezione longterm sono i vecchi kernel ai quali vengono fixati i bug e avvolte anche introdotte nuove funzionalità per essere compatibili con i nuovi software o per esigenze particolari.
Detto questo io vi consiglio di scaricare la versione stable ma se siete curiosi potete anche installare la prepatch, però sappiate che potrebbe non funzionare bene.
Ora passiamo al terminale, tutti questi comandi dovete darli da root.
Installiamo le dipendenze per compilare il kernel:
apt-get install build-essential bin86 fakeroot kernel-package libglade2-dev libncurses5-dev libqt3-mt-dev bc
Aggiungiamo l’ utente al gruppo src:
adduser nomeutente src
Diamo i permessi all’ utente per la directory src:
chmod -R g+wr /usr/src
In questo caso io sto scaricando la versione 3.12.1 che adesso è l’ ultima versione ma voi andate su kernel.org per controllare e scaricare l’ ultima versione e cambiare la versione nei comandi, questo è riferito a tutti gli amanti del ctrl-c e ctrl-v xD.
Entriamo nella directory src e scarichiamo i sorgenti del kernel:
cd /usr/src
wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.12.1.tar.xz
Ora estraiamo il kernel ed entriamo nella sua directory:
tar -zxvf linux-3.12.1.tar.xz
cd linux-3.12.1
A questo punto se avete delle periferiche hardware particolari e volete che funzionino dopo la ricompilazione collegatele al pc, perche il comando che stiamo per dare andrà a vedere il nostro hardware e caricherà nel kernel solo i moduli di cui abbiamo bisogno per il nostro hardware.
Generiamo il file di configurazione ottimizzato:
make localmodconfig
Ora dobbiamo velocizzare la compilazione dando il comando:
export CONCURRENCY_LEVEL=2
Cambiate il 2 con il numero di core che possiede la vostra CPU.
Ed ora si compila dando il comando:
make-kpkg –rootcmd fakeroot –initrd kernel_image kernel_headers modules_image
Ora entriamo nella cartella superiore:
cd ..
E troveremo 2 file deb, uno è il kernel e l’ altro gli headers del kernel e installiamoli con il comando:
dpkg – i *.deb
Ora il kernel è installato e quando riavvierete Ubuntu farà il boot col nuovo kernel .
Spero di esservi stato utile, saluti lo staff.
PS. Guida scritta da Antonio e inviata tramite Email alla redazione