OldWildWeb Logo
Accedi o Registrati

Debian Squeeze aggiornare il kernel

Come aggiornare il kernel di Debian Squeeze


Guida ricompilazione del kernel Debian Squeeze 64bit linux

In questo articolo parleremo di come ricompilare il kernel di Debian Squeeze versione a 64bit, dopo questa ricompilazione il sistema operativo sarà più veloce ed in particolare ottimizzato per la vostra CPU, il kernel utilizzato durante i nostri test è l'ultimo stable: 2.6.38.2 (nota: con kernel più recenti questa guida potrebbe non funzionare).

NOTA: Utilizzate questa procedura con il Kernel Originale di Debian

Questo articolo è dedicato al 20° compleanno di Linux!

Conviene ricompilare il kernel

Ricompilare il kernel porta alcuni benefici, ad esempio un kernel personalizzato può essere creato appositamente per ottimizzare il vostro hardware, ad esempio il processore, oltre a questo si può abilitare molte funzionalità molto interessanti di base disattivate, come ad esempio il supporto per alcuni file system, driver particolari etc.. etc..
La filosofia di debian è quella di mantenere pacchetti molto testati piuttosto che pacchetti nuovi, installare un nuovo kernel in Debian offre notevoli vantaggi sulle prestazioni e sulla compatibilità di nuovi hardware.

Come prina cosa installiamo i seguenti pacchetti necessari alla compilazione del kernel con i seguenti comandi da root:

apt-get install g++ gcc make

apt-get install libncurses5-dev

Scarichiamo quindi la versione del kernel 2.6.38.2 dal sito web ufficiale: http://www.kernel.org/.

Copiamo la versione del kernel compressa dentro: /usr/src/

A questo punto basta decompattare l'archivio con il comando da console all'interno di /usr/src

tar xvjf linux-2.6.38.2.tar.bz2

Fatto questo creiamo il link simbolico linux verso la cartella dei sorgenti kernel decomrpessi con il comando:
ln -s linux-2.6.38.2 linux

usare quindi i seguenti comandi:

cd linux

make menuconfig
... Nella configurazione menuconfig è importante scegliere la cpu del vostro computer tra la lista CPU del menu config in modo da ottimizzare le prestazioni del kernel per la cpu del vostro computer, per tutta la famiglia AMD64 è possibile ad esempio selezionare la voce OPTERON/Athlon64 valida anche per i processori Turion 64 e tutti quelli basati su architettura AMD, analogo è il discorso per le altre tipo di CPU, in caso di dubbi c'è l'opzione generale Generic x86_64.

Per quanto riguarda le altre opzioni la scelta di default è valida, ovviamente potrete aggiungere od eliminare ciò che preferite.

Finita la configurazione procedete con i seguenti comandi:

make dep

make bzImage

make modules; make modules_install

Questi ultimi comandi richiedono molto tempo per essere eseguiti, fatevi pure una passeggiata durante le lunghe operazioni di compilazione del kernel..

A questo punto bisgna utilizzare il comando depmod per creare i file delle dipendenze:

depmod 2.6.38.2

Ok il lavoro è quasi terminato, bisogna ora entrare nella cartella: /usr/src/linux/arch/x86_64/boot

(nel caso di architettura a 32 bit: /usr/src/linux/arch/x86/boot )

copiare il file bzImage in /boot/ con il comando cp:

cp bzImage /boot/bzImage (è consigliato rinominare questo file con la versione di kernel del tipo: bzImage-2.6.38.2, noi per semplicità la chiameremo semplicemente bzImage

Fatto ciò bisogna generare un file immagine initrd con il seguente comando:

mkinitramfs -k 2.6.38.2 -o /boot/newinitr

L'ultimo passo da eseguire è quello di aggiungere una voce al boot loader grub, se non presente è vivamente consigliato di installarlo in modo da avere la possibilità di usare il kernel vecchio o il nuovo in modo da evitare ogni tipo di problema dovuto ad una cattiva compilazione del kernel.
Il modo piu semplice per editare grub e aggiungere l'opzione di boot con il kernel nuovo, è quello di aprire la configurazione generata in automatico con un editor di testo (file: /boot/grub/grub.conf) ad aggiungere una voce al menu come nel formato qui sotto, copiando una voce gia esistente in modo da avere i percorsi di root corretti:

menuentry 'Debian NEW KERNEL TEST 1' --class debian --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,msdos6)'
search --no-floppy --fs-uuid --set 0f99e46a-1c3c-40cb-bd3c-9b7ff1af9a6f
echo 'Loading NEW LINUX ...'
linux /boot/bzImage root=UUID=0f99e46a-1c3c-40cb-bd3c-9b7ff1af9a6f ro quiet
echo 'Loading initial ramdisk ...'
initrd /boot/newinitr
}


Debian in modalità testo

Per avviare debian in modalità testo, possiamo sostituire l'opzione: ro quiet con ro single. Questa modalità sarà molto apprezzata soprattutto dai nostalgici del puro linux modalità testo.
Noterete un incremento delle prestazioni davvero notevole..
Per avviare il desktop manager basta utilizzare il comando da root:

init 5

Il alternativa è anche possibile caricare solo il desktop privo di servizi loggandosi con l'utente desiderato digitando il comando:

startx

Questa modalità è ottima quando si vuole utilizzare il pc per applicazioni delicate, in questo caso sarà necessario configurare manualmente anche la rete.



Ricompilazione del Kernel Linux Ricompilazione Kernel Debian





Il tuo nome (opzionale)
E-Mail (non verrà pubblicata)
Il tuo sito web (opzionale)
Notifiche

angelo
ciao,
ho provato ad aggiornare il kernel, ma ricevo questo messaggio di errore. Che cosa significa?

root@angelico:/usr/src/linux# make menuconfig
/usr/src/linux-headers-2.6.32-5-common/scripts/Makefile.build:44: /usr/src/linux-headers-2.6.32-5-common/scripts/basic/Makefile: No such file or directory
make[3]: *** No rule to make target `/usr/src/linux-headers-2.6.32-5-common/scripts/basic/Makefile'. Stop.
make[2]: *** [scripts_basic] Error 2
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2

come posso risolvere il problema?
fammi sapere
grazie
ciao
angelo Inviato Saturday 10th of March 2012 01:51:38 AM