La ricompilazione del kernel di linux



 

Con questo post vorrei fare un piccolo riassuntino sulla ricompilazione del kernel di linux.

Per prima cosa dovete procurarvi i file sorgenti del nuovo kernel, questi sono reperibili dal sito ufficiale www.kernel.org.
Fatto questo estraete il file nella directory /usr/src e poi assicurarsi che la directory abbia come utente e come gruppo i permessi di root.
Fatto questo create un link simbolico di nome Linux alla directory dei sorgenti del kernel in modo di poter utilizzare il link per entrare nella directory.

Ora cominciamo a configurare il nostro nuovo kernel facendo “make mrproper” in modo da trovarci in un ambiente integro e lanciamo lo script di configurazione.
Prima di questo vorrei ricordarvi che lo script salva la configurazione in un file “nascosco” di nome .config quindi se avete già un file di configurazione del passato kernel e volete mantenere le stesse impostazioni potete copiare il vecchio file di configurazione nella nuova directory e dopo aver eseguito:
– “make menuconfig” per avere una gui grafica da shell
– “make config” per avere una configurazione solo testuale
– “make xconfig” per avere una gui completamente grafica utilizzando le librerie qt.
potete scegliere di caricare il vecchio file di configurazione come base di partenza.

Fatto questo si parte con la vera compilazione e questa può richiedere parecchio tempo in base alla cpu che il vostro pc ha installato.

Lanciate il comando “make dep && make clean” per creare le dipendenze per la compilazione ed eliminare eventuali file temporanei.

Se non ci sono stati errori possiamo continuare a creare l’immagine vera e propria del kernel lanciando il comando “make bzImage”.

Concluso questo la nuova immagine si troverà nella directory “/usr/src/linux/arch/i386/boot”.

Ora il kernel è compilato, quello che bisogna fare ora è compilare i vari moduli eseguendo il comando “make mudules” e poi installarli nella directory “/lib/modules” con il comando “make module_install”.

Abbiamo finito, ora basta solo copiare l’immagine del kernel nella directory di default “/boot” con il comando:
“cp /usr/src/linux/arch/i386/boot/bzImage /boot/Linux-versione-kernel”
e copiare il System map con il comando:
“cp /usr/src/linux/System.map /boot/System.map-versione-kernel”.

Ora bisogna andare nella directory /etc e con un qualsiasi editor di testo modificare il file lilo.conf aggiungendo le seguenti righe alla fine del file:

image=/boot/Linux-versione-kernel
label=Nuovo_kernel
append = “-k /boot/System.map-versione-kernel
root=/dev/hda3
(hd3 è di esempio, voi dovete mettere la partizioni dove si trova la cartella /boot)
read-only

Fatto questo lanciate il comando “lilo -v” e controllare che non appaiano degli errori.
Se tutto è andato tranquillo riavviate il vostro pc e nella schermata di lilo selezionate il nuovo kernel, loggatevi e da shell scrivete “uname -r”, vi apparirà la versione del nuovo kernel in uso.

Mirco

Web Developer, ciclista, nuotatore, gamer, calciofilo, amante dei motori a due e quattro ruote, troppe passioni per una bio...

Altri articoli - Website

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*