Quella che si vede sopra è l'immagine di come in realtà è il nostro kernel Linux dopo l'installazione di una tipica distribuzione GNU/Linux. Il kernel Linux diventa sempre più grasso poichè vengono sempre inseriti nuovi supporti all'hardware. Adesso indicherò un modo semplice per ottenere un kernel minimale con solo quello che ci serve, e cioè un kernel fatto su misura per il nostro pc, senza tirarsi dietro i circa 2000 moduli in più che non ci servono. Tanto tempo fà, chì come me si è cimentato a ricompilarsi il kernel per ottimizzare il proprio hardware scadente, si è accorto fin da subito del tanto tempo che ci voleva, e soprattutto, di tutte le volte che si andava incontro ad un kernel panic, poichè si toglieva qualcosa di "vitale". Comunque anche dopo molteplici tentativi ed ore-giorni sprecati, non si era completamente soddisfatti, almeno io. Il pc con cui mi sono accanito era un Olidata pentium 3 ad 800mh con (se non ricordo male) la ram portata a 512, una scheda video Matrox ed un hard disk da 16G ecc. ecc. Comunque andando al sodo, riepilogo i passi per la ricompilazione del kernel, per poi soffermarmi su l'opzione che permetterà di snellire il nostro kernel.
# apt-get install build-essential bin86 kernel-package libncurses5 libncurses5-dev fakeroot module-init-tools
# cd /usr/src
# uname -r
# apt-get install linux-source-2.6.38
# bzip2 -dc linux-source-2.6.38.tar.bz2 |tar xf -
# ln -sf linux-source-2.6.38 linux
# cd linux
# cp /boot/config-2.6.38-686 .config
a questo punto in genere si usa a secondo delle esigenze:
# make menuconfig
oppure
make oldconfig
per ottenere invece un kernel minimale, bisogna usare:
# make localmodconfig
che si occuperà di lanciare lsmod per conoscere i moduli caricati sul nostro sistema e leggerà tutti i Makefiles, e alla fine rimuoverà tutti i moduli che non serviranno, come si può leggere anche quà. La ricompilazione risulterà molto veloce, in virtù di quanto detto sopra. Alla fine per generare linux-image e linux-headers, per chì ha due cpu, può usare:
# CONCURRENCY_LEVEL=2 make-kpkg --initrd --append-to-version=-nome kernel-image kernel-headers
adesso il nostro tux, sarà più bello e più magro.
enjoy 😉