|
There are no translations available
Molti credono che le distribuzioni Linux moderne siano delle sfere di cristallo: tanto facili gestire con gli strumenti dedicati, quanto complicate quando diventa necessario uscire fuori dagli schemi proposti dalla distribuzione. Un esempio lampante è il kernel Linux. Una volta, ai tempi della Slackware, era buona abitudine ricompilarsi il kernel, perdere giornate intere a spulciare le opzioni di menuconfig, in cerca della configurazione ideale per il proprio hardware. Ora con Ubuntu funziona quasi sempre tutto e subito, nessuno ha più voglia di crearsi il proprio kernel ottimizzato e ci si accontenta di quello standard, spesso 1-2 versioni indietro rispetto all'ultimo disponibile (Ubuntu Hardy usa il 2.6.24.19 quando da pochi giorni è uscito il 2.6.26). E in effetti non ci sarebbe niente di male.... se non che, con le ultime 3-4 versioni di Kubuntu, il mio portatile (Acer Aspire 1661WLM) è diventato sempre più lento, tanto da temere qualche problema hardware! Visto che 5-6 minuti per fare il boot per me sono troppi mi son deciso a rispolverare la mia vecchia passione per il 'make bzImage' :)
Su Ubuntu ci sono diverse procedure 'pulite' per ricompilare il kernel, ma nessuna mi entusiasmava e a me non interessa creare dei pacchetti .deb da distribuire, perché il mio kernel sarà tagliato su misura per il mio HW. Ho quindi trovato una soluzione che mi permette di avere l'ultimo kernel aggiornato e non sporcare la Kubuntu, anche di fronte a successivi aggiornamenti ufficiali. La procedura che ho adottato è la seguente, il tutto come root (sudo -i): - Scaricare l'ultima versione del kernel
- Scompattarlo in /usr/src
- Creare il link simbolico /usr/src/linux alla directory del nuovo kernel
- Copiare il file di configurazione del kernel corrente usato da Ubuntu,
da /boot/config-2.6.24.......... a /usr/src/linux/.config - Spostarsi in /usr/src/linux
- Lanciare make menuconfig e sbizzarrirsi. In uno dei primi sottomenù è possibile aggiungere una stringa che identifica il vostro kernel custom; io ho messo "-marco"
- Compilare il kernel: make bzImage
- Compilare i moduli: make modules
- Installare i moduli: make modules_install (verranno installati in /lib/modules/2.6.26-marco)
- Copiare il nuovo kernel e il system.map in /boot:
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.26-marco cp System.map /boot/System.map-2.6.26-marco - Ricreare l'initrd: update-initramfs -k 2.6.26-marco -u
- Aggiornare grub: update-grub
Ora non vi resta che riavviare e vedere i risultati.
Da notare che tutti i driver 'restricted', quelli non ufficiali del kernel, tipo quelli nvidia, ati (fglrx) o madwif, vanno ricompilati a mano. Io son passato da 5-6 minuti di boot (dall'accensione al login manager) a 50 secondi!! Se volete ripulire la vostra ubuntu dal vostro kernel custom è sufficiente cancellare: - Ripulire /boot
- Cancellare i moduli da /lib/modules (utile anche prima di un make modules_install)
- Cancellare i sorgenti da /usr/src
W I kernel ottimizzati!
|