[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Come passare del 2.4.X al 2.6.X was: Fwd: Kernel in Sarge



Alle 15:02, giovedì 20 gennaio 2005, Pasquale Ravo ha scritto:

tanto è (quasi del tutto) un copia incolla:

Rimuovi il kernel che ti ha dato problemi o, in alternativa, fai il reboot con 
un altro kernel, la serie non importa, va bene anche una 2.4.X.

Controlli che in /etc/apt/sources.list vi siano i riferimenti giusti (se vuoi 
scaricare il 2.6.10 certamente non lo trovi in stable)
Controlli che in /etc/apt/apt.conf vi sia quello che vuoi.

Usando dselect, prima aggiorna e poi selezioni un qualsiasi kernel-image della 
serie 2.6.x e contemporaneamente selezioni anche il kernel-source che ti 
interessa (sono disponibili le 2.6.8, 2.6.9, 2.6.10: la versione che ti 
interessa dipende anche dal tuo processore, ma puoi sempre scaricartene una 
generale che vada bene per tutti i i386. Segnati anche module-assistant, 
serve per la gestione dei moduli con il 2.6.X.

SE NON INTENDI AGGIORNARE TUTTO IL SISTEMA usa dselect solo per prenderti il 
nome dei pacchetti che ti interessano:

apt-get install module-assistant
Poi usa apt-get install kernel-source-2.6.X-versionechetiinteressa
Poi usa apt-get install kernel-image-2.6.X-versionechetiinteressa

L'ordine degli ultimi due NON è casuale, ti fa risparmiare tempo.

Ad un certo punto ti dirà che lui vuol usare initrd (è una rottura, ma è di 
default sulle immagini debian), allora vai in un'altra tty, apri da root:
vi /etc/lilo.config (se sei uno di quelli persi per emacs usa openoffice....)

aggiungi, se già non c'è, la riga image=/initrd.img
subito dopo la riga image, è in basso, verso la fine del file, cosi:

image=/vmlinuz
initrd=/initrd.img

(a questo punto, se non lo hai già fatto prima, tanto vale mettere vga=791, è  
più in alto, al posto di vga=normal, almeno per la grafica in 1024*768, ed 
anche:
image=/vmlinuz.old
initrd=/initrd.img.old
se hai solo un kernel devi  anche decommentare optional altrimenti lilo si 
incavola perché non trova l'altro kernel, decommentare vuol dire togliere il 
cancelletto)

salvi, esci, dai il comando lilo <====== non dimenticare

Se non hai fatto errori non avrai messaggi strani ma solo uno o due Added, 
tutto regolare.

Torni alla tty precedente e gli dici di continuare intemerato, dopo poco 
potrebbe darti un'altro warning se tu stai reinstallando un kenrnel sopra un 
kernel con lo stesso nome. In questo caso:

cambi di nuovo tty (sempre da root) e:
uname -r
ed ottieni il nome del kernel su cui stai lavorando e che vuoi reinstallare.
rm -r /lib/modules/nome-kernel (drastico, ma tanto reinstalli)
oppure:
mv /lib/modules/nome-kernel /lib/modules/nome-kernel-old (così al limite li 
recuperi)
torni alla tty di lavoro,

Gli dici di continuare usando pure la configurazione esistente di lilo 
(opzione predefinita).

Lui si fa un paio di chiacchere e poi smette, a questo punto:

Riavvii, di default se non hai cambiato altro in lilo.conf riparte con il 
nuovo kernel.

Adesso sei pronto per ricompilarti il tuo nuovo 2.6.X.

Vai in cd /usr/src (è la directory di default in debian per i sorgenti del 
kernel)
rm linux (con i 2.6 fa solo confusione)

tar xjvvf kernel-sourceX-versionechetiinteressa

cd kernel-source-versionechetiinteressa

make clean (serve solo ad assicurarti che vengano cancellati precompilati, se 
ti ricompili il kernel altre volte magari per fare cambiamenti minimi non 
serve)

make oldconfig (ti carichi la configurazione di default dei kernel-debian, c'è 
di tutto, anche di più, ma immancabilmente non c'è mai tutto e solo quello 
che vuoi tu), se hai fatto le cose giuste non ti dovrebbe fare nemmeno una 
domanda, spara un sacco di chiacchere e se ne esce tranquillo.

può essere interessante salvarti una copia del 
file /usr/src/kernel-source-versionechetiinteressa/.config da qualche parte.

make menuconfig (in alternativa grafica make xconfig, mi pare) è ti modifichi 
le cose che ti interessano, tipo processore, schede esistenti realmente, 
memoria, struttura modulare o no, etc, etc. Non modificare il cramfs che 
serve per caricare via initrd, quando vuoi modificare qualcosa dai 
un'occhiata all'help.

salvi ed esci dal programma (a questo punto se ti eri salvato una copia del 
vecchio .config poi fare un diff tra il vecchio ed il nuovo e ponzarne le 
differenze).

sempre nella stessa directory dai:

make-kpkg --initrd --append-to-version.200501211025 --revision TUONOME.nn 
kernel_image

(tradotto:

make-kpkg                 => fammi un pacchetto .deb con un kernel dentro
--initrd                       => che si carica via initrd
--append-to-version.2...  => metti nel nome del kernel che vedrai con uname -r 
la chiacchera dopo il punto che, per me vuol dire:
2005 01 12 10 25 (12 gennaio 2005 alle 10 e 25)

--revision TUONOME.nn => serve poi a riconoscere il pacchetto deb creato in 
mezzo ad altri con lo stesso nome, nn deve essere un numero, io uso lo stesso 
numero di revisione del kernel-debian che ho scaricato, adesso per esempio 
per il 2.6.10 è il 4, quindi --revision alex.4

kernel_image => fammi un kernel-image)

dopo l'invio andrà avanti un qualche tempo, fintancoché finirà, come tutte le 
cose.

allora:

cd ..

dpkg -i kernel-image-versionechetiinteressa-TUONOME-2005 etc, etc

Ignori i messaggi relativi ad initrd ed altre cavolate, non avrai problemi con 
i moduli perché hai provveduto con append-to-version, dai ok per il vecchio 
lilo e quando ha finito reboot e via.

A.

p.s.: se hai intenzione di divertirti e pastrocchiare con il kernel, allora 
forse ti conviene lasciar fuori dal giro una versione stabile e funzionante, 
in tal caso devi dire a lilo dov'è in modo che la escluda dal riciclo. Ma 
questo è un altro tema ed ho già fatto perdere troppo tempo a tutti, 
soprattutto a me.


p.p.s.: non mi sono riletto bene e potrei essermi mangiato qualche tasto, 
correggete pure senza problemi.



Reply to: