# come aggiornare il kernel senza fare danni???

## crisandbea

salve a tutti, vorrei provare ad aggiornare il kernel in quanto con il kernel attuale riscontro alcuni piccoli problemi che non riesco a risolvere in nessun modo, ora ho il kernel 2.6.12-gentoo-r6, vorrei passare almeno al 2.6.13 visto ke il 2.6.14 non è ancora consigliato,anche se lo proverei,visto che ha molte opzioni in +,che magari potrebbero risolvere i miei problemi attuali.  grazie a tutti

----------

## duffimc

prova a seguire queste istruzioni...la documentazione riguarda l'installazione di gentoo...ma io l'ho usata anche per aggioranre il kernel ed è andato tutto bene....  :Laughing: 

http://www.gentoo.org/doc/it/handbook/2005.1/handbook-x86.xml?part=1&chap=7

Ciaoooo....

----------

## crisandbea

proverò in quel modo.   e vi farò sapere.. ciao

----------

## bender86

NON cancellare il kernel funzionante, aggiungi solamente quello nuovo alla lista, in modo da poter contare su un sistema funzionante.

----------

## crisandbea

mmmm.....    come devo fare per non cancellare il vecchio??   ciao e grazie del consiglio

----------

## 102376

devi solamete tenerlo nella cartella boot!!

quando copi il nuovo dai un altro nome.....

e poi aggiungi ad lilo.conf (o grub) la conf del nuovo kernel

----------

## duffimc

Non devi fare nulla... :Very Happy: ...

Nel senso, una volta scaricati i sorgenti del nuovo kernel....in 

```
/usr/src 
```

troverai 3 cartelle

```

/linux

/linux-2.6.12-gentoo-r6

/linux-2.6.13-gentoo-r5

```

entra in  

```
/linux-2.6.13-gentoo-r5
```

e segui le istruzioni della guida...

Casomai qualcosa vada storto con la versione nuova...basta rieffettura i passi che trovi nella guida alla sezione codice 14 e codice 15 sostituendo la versione del kernel vecchia...reboot e ti ritroverai ad usare il vecchio kernel.... :Smile: 

----------

## neryo

 *crisandbea wrote:*   

> salve a tutti, vorrei provare ad aggiornare il kernel in quanto con il kernel attuale riscontro alcuni piccoli problemi che non riesco a risolvere in nessun modo, ora ho il kernel 2.6.12-gentoo-r6, vorrei passare almeno al 2.6.13 visto ke il 2.6.14 non è ancora consigliato,anche se lo proverei,visto che ha molte opzioni in +,che magari potrebbero risolvere i miei problemi attuali.  grazie a tutti

 

tanto per sapere quali sarebbero i tuoi problemi attuali? perche' difficilmente si risolvono mantenendo le stesse configurazioni del kernel precendente.. quindi sarebbe meglio capire cosa c'e' che manca...

Comunque ti consiglio di copiarti il .config del tuo "vecchio" kernel nella cartella del "nuovo" e poi caricarlo con menuconfig.. e poi apporti le modifiche del caso..   :Wink: 

----------

## lavish

Io ti consiglio di copiare il vecchio .config nella directory contenente i nuovi sorgenti e da lì eseguire un 

```
make oldconfig
```

in modo da dover agire solo sulle aggiunte che sono state fatte nella nuova serie senza perdere nulla  :Wink: 

Ciao!

----------

## X-Drum

ogni volta che esce una nuova minor release,

come è stato detto non  vengono introdotte feature che 

alterano radicalmente il comportamento del kernel.

Sono release di "mantenimento", quindi si trovano

bugfixes e spesso nuovi drivers o modifiche a questi ultimi.

Quindi aggiornarlo "puo'" essere utile, specie se l'hardware

con il quale si lavora è molto nuovo e si spera in nuovi drivers

o in nuove release degli stessi.

io uso l'approccio somaresco di solito per l'upgrade:

```
emerge nuovo kernel

cp /usr/src/linux-vecchiokernel/.config /tmp

rm /usr/src/linux

ln -sf /usr/src/linux-nuovokernel /usr/src/linux

cd /usr/src/linux-nuovokernel && make menuconfig

make && make modules_install

mkdir /boot/nuovokernel

cp System.map /boot/nuovokernel

cp .config /boot/nuovokernel

cp arch/miaarchitettura/boot/bzImage /boot/nuovokernel

<aggiungo la nuova entry in grub.conf>

<riavvio>

module-rebuild rebuild
```

cancelli il vecchio kernel solo dopo esserti accertato che

tutto funziona con il nuovo e che sia stato compilato

decentemente (contenga tutti drivers che ti servono)

```
emerge -C =vecchiokernel

rm -rf /usr/src/linux-vecchiokernel

rm -rf /lib/modules/vecchiokernel

rm -rf /boot/vecchiokernel
```

----------

## crisandbea

ragazzi,purtroppo non riesco ad aggiornare il kernel, sarò incapace io ma niente da fare, quando faccio emerge gentoo-sources, lui tende a scaricarmi di nuovo quello che ho già ovvero il 2.6.12-gentoo-r10. come posso fare per scaricare l'ultimo? non devo mica aggiornare portage prima?   grazie a tutti

----------

## neryo

 *crisandbea wrote:*   

> non devo mica aggiornare portage prima?

 

certo con:

```
# emerge sync
```

ciao

----------

## crisandbea

grazie mille

----------

## lucapost

Ho appena aggiornato ai gentoo-sources-2.6.19-r3.

C'Ã¨ qualche caso nel quale Ã¨ sconsigliato utilizzare make oldconfig?

L'ho sempre fatto, ma non si sa mai....

----------

## Raffo

Alle brutte makeoldconfig si porta dietro qualcosa che viene messo come deprecato... ma, se non ricordo male, chiede tutto lui... sta a noi prestare attenzione.

----------

## bandreabis

 *lucapost wrote:*   

> Ho appena aggiornato ai gentoo-sources-2.6.19-r3.
> 
> C'Ã¨ qualche caso nel quale Ã¨ sconsigliato utilizzare make oldconfig?
> 
> L'ho sempre fatto, ma non si sa mai....

 

IO non ho ancora avuto problemi anche tra major release. (a parte con SD card reader... ma è un altro discorso).

Forse è solo fortuna.

----------

## Luca89

 *lucapost wrote:*   

> C'Ã¨ qualche caso nel quale Ã¨ sconsigliato utilizzare make oldconfig?

 

Dovrebbe funzionare sempre, naturalmente fai attenzione alle domande che ti fa e rispondi correttamente.

----------

## X-Drum

 *neryo wrote:*   

> 
> 
> certo con:
> 
> ```
> ...

 

[pignolo mode]

```
emerge --sync
```

[/pignolo mode]

 :Wink: 

----------

## flocchini

ne approfitto... io faccio come x-drum 

 *X-Drum wrote:*   

> 
> 
> ```
> emerge nuovo kernel
> 
> ...

 

ma a questo punto monto /boot e faccio un ignorantissimo "make install" che copia l'immagine del kernel, il system.map adeguato e un link di nome vmlinuz al kernel corrente in /boot e rinomina il precedente in vmlinuz.old ottenendo quanto segue:

```

utopia_planitia boot # ls -all

total 28092

drwxr-xr-x  4 root root    2048 Jan  4 13:20 .

drwxr-xr-x 21 root root    4096 Dec 16 17:30 ..

-rw-r--r--  1 root root       0 Oct 28  2004 .keep

lrwxrwxrwx  1 root root      27 Jan  4 13:20 System.map -> System.map-2.6.19-gentoo-r2

-rw-r--r--  1 root root  788706 Jan  3 20:05 System.map-2.6.18-gentoo-r6

-rw-r--r--  1 root root  818503 Jan  4 13:20 System.map-2.6.19-gentoo-r2

lrwxrwxrwx  1 root root      27 Jan  3 20:05 System.map.old -> System.map-2.6.18-gentoo-r6

lrwxrwxrwx  1 root root       1 Feb  6  2005 boot -> .

lrwxrwxrwx  1 root root      23 Jan  4 13:20 config -> config-2.6.19-gentoo-r2

-rw-r--r--  1 root root   35138 Jan  3 20:05 config-2.6.18-gentoo-r6

-rw-r--r--  1 root root   37552 Jan  4 13:20 config-2.6.19-gentoo-r2

lrwxrwxrwx  1 root root      23 Jan  3 20:05 config.old -> config-2.6.18-gentoo-r6

drwxr-xr-x  2 root root    1024 Feb  6  2005 grub

drwx------  2 root root   12288 Feb  6  2005 lost+found

lrwxrwxrwx  1 root root      24 Jan  4 13:20 vmlinuz -> vmlinuz-2.6.19-gentoo-r2

-rw-r--r--  1 root root 2214995 Jan  3 20:05 vmlinuz-2.6.18-gentoo-r6

-rw-r--r--  1 root root 2256617 Jan  4 13:20 vmlinuz-2.6.19-gentoo-r2

lrwxrwxrwx  1 root root      24 Jan  3 20:05 vmlinuz.old -> vmlinuz-2.6.18-gentoo-r6

```

quindi, 2 entries stabili in grub, una che punta sempre a vmlinuz e l'altra sempre a vmlinuz.old e sono sempre stato felice.

Vi sono controindicazioni? Ho scoperto l'acqua calda?  :Wink: 

----------

## skypjack

Anch'io uso il make install, non ho mai trovato contro indicazioni se non il dover pulire a mano /boot, ogni tanto, quando arriva una nuova release, ma è un problema che definirei marginale e sopportabile (alla fine, l'utente medio di gentoo non credo trovi difficoltà o faccia fatica a fare qualche lavoretto manuale in più, vista la mole richiesta per domare la nostra cara distro).

Anche il metodo "sposto tutto e faccio i link come mi pare" l'ho usato per molto, ma almeno così evito di mettere mano al grub. L'unica vera pecca, se la vuoi vedere, è nel fatto che avrai sempre solo due kernel attivi, vmlinuz e vmlinuz.old, ma a me bastano e avanzano, tanto al massimo ho un periodo "ibrido" nel passaggio fra due release successive e poi uso sempre l'ultimo installato (cioè vmlinuz).

Insomma, direi che sono differenti scuole di pensiero e nessuna delle due è giusta o sbagliata, ma entrambe percorribili a piacere.

Suggerisco, anche a chi opera a mano, tanto per non mettere mano al link /usr/src/linux, di attivare la flag symlink che all'atto dell'installazione di una nuova release slotted si prende la briga di aggiustare il puntatore di cui sopra facendolo indirizzare a quest'ultima. Niente di che, si chiama comodità, se qualcuno è interessato.

----------

## djinnZ

 :Twisted Evil: Last edited by djinnZ on Mon Feb 23, 2009 8:51 pm; edited 1 time in total

----------

## .:chrome:.

 *lucapost wrote:*   

> Ho appena aggiornato ai gentoo-sources-2.6.19-r3.
> 
> C'Ã¨ qualche caso nel quale Ã¨ sconsigliato utilizzare make oldconfig?
> 
> L'ho sempre fatto, ma non si sa mai....

 

secondo il recente modello di sviluppo del kernel (a partire dalla 2.6.15 in poi) i vari Torvalds, Morton, Cox, e compagni hanno deciso di non fare nessun fork per la serie 2.7 e di usare la corrente serie 2.6 anche per l'inclusione di nuove tecnologie ed innovazioni, giudicate strategiche.

ecco che nel 2.6.17, 18 e 19 abbiamo visto la migrazione dal vecchio sistema netfilter al nuovo più performante e flessibile (e parzialmente incompatibile). con il 2.6.18 è stato introdotto il tanto discusso "compat VDSO support", e con il 19 tutto un insieme di nuove routines di debug, l'indirizzamento di memoria a 64 bit e via dicendo... insomma, uno sconvolgimento dietro l'altro (e sottolieno la parola sconvolgimento, che non è stata scelta a caso).

alla luce di questo, che è trattato e discusso ampiamente su qualunque mailing list, sito di discussione, o qualuqnue altra cosa inerente il kernel, e dal momento che i bugfix sono relativamente pochi e di scarsa importanza, quello che è sconsigliato è lo stesso aggiornamento del kernel.

quando un sistema funziona, ha il pieno supporto a tutto l'hardware, aggiornare il kernel oggi vuol dire andare incontro a qualcosa di abbastaza oscuro; per questo motivo il kernel 2.6.16 è stato scelto per la produzione ed è quello che viene mantenuto appunto come stabile. gli aggiornamenti tra versioni successive del 2.6.16 sono gli unici di cui ci si possa fidare al 100% e sui quali si può fare tranquillamente un make oldconfig. per i passaggi di versione, make oldconfig porta spesso a trovarsi con configurazioni non più funzionanti soprattutto per quanto riguarda i layer ATA, quello di rete, il sistema di filtraggio dei pacchetti e poca altra roba. con i nuovi kernel conviene rifare le configurazioni da capo.

tutto spiegato su LWN, kerneltrap, e roba simile... basta avere voglia di cercare

----------

## cloc3

 *.:chrome:. wrote:*   

> alla luce di questo, che è trattato e discusso ampiamente su qualunque mailing list, sito di discussione, o qualuqnue altra cosa inerente il kernel, ...

 

quali sono le fonti di informazione più affidabili, per conoscere le evoluzioni strategiche di sviluppo del kernel?

in genere cerco di dare un'occhio ai changelog di gentoo e del kernel, ma confesso che mi sembrano fonte poco soddisfacente per formarmi una idea personale.

----------

## .:chrome:.

io seguo principalmente questi:

http://www.kernel.org/

http://lwn.net/

http://kerneltrap.org/

e qualche altro di importanza minore.

e poi:

/usr/src/linux/Documentation/feature-removal-schedule.txt

/usr/src/linux/Documentation/Changes

soprattutto nell'ultimo, si trovano delle cosucce che uno non avrebbe mai immaginato di vedere, un annetto fa

come ho sempre detto... basta cercare e avere il tempo e la voglia per leggere

----------

## skypjack

Hai detto bene, il tempo!!

Non so cosa fai nella vita, ma con la sessione di esami alle porte, credimi, talvolta il tempo è tiranno...

----------

