Dsy Network www | forum | my | didattica | howto | wiki | el goog | stats | blog | dona | rappresentanti
Homepage
 Register   Calendar   Members  Faq   Search  Logout 
.dsy:it. : Powered by vBulletin version 2.3.1 .dsy:it. > Community > Tech > [Kernel] Come aggiornarlo
  Last Thread   Next Thread
Author
Thread    Expand all | Contract all    Post New Thread    Post A Reply
Collapse
recoil
dsy adminz

User info:
Registered: Mar 2002
Posts: 4454 (0.51 al dì)
Location: Milano / Erba
Corso: TICOM
Anno: laureato
Time Online: 61 Days, 16:17:45 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged
[Kernel] Come aggiornarlo

Scrivo questo how-to perché a quanto abbiamo capito oggi ci sono in giro delle guide che trattano l'argomento in modo incompleto e frettoloso.
Questa consideriamola la versione 1, la migliorerò sicuramente in base alle vostre indicazioni


Parte 1
Come procurarsi il kernel

Parte 2
Come configurare il kernel

Parte 3
Compilazione e installazione



Come procurarsi il kernel

I kernel escono a questo indirizzo
http://www.kernel.org/ dove potete trovare i sorgenti e le patch da applicare ai sorgenti che avete già installato.
I sorgenti del kernel si trovano in /usr/src e in genere si utilizza un link simbolico per puntare ad essi. Dovete quindi scompattare i sorgenti (che trovate in formato tar.gz o tar.bz2) tramite i comandi tar o bunzip2, quindi creare il link simbolico.
Il link è /usr/src/linux, per crearlo basta fare ln -s /usr/src/directorysorgenti /usr/src/linux
Nel caso abbiate già i sorgenti del kernel potete scaricare la patch che occupano molto meno spazio quindi sono più comode da scaricare.
Le patch si trovano sempre nel sito di prima, vanno decompresse in /usr/src/linux (sempre con tar o bunzip2) quindi serve il comando
patch -p0 < nomefilepatch


Come configurare il kernel

A questo punto supponiamo che in /usr/src/linux ci siano i sorgenti aggiornati del kernel.
Da questa directory potete iniziare il processo di compilazione, non prima di aver configurato moduli e componenti del kernel.
Per farlo esistono dei tool grafici che ci vengono in aiuto.
Le opzioni che potete scegliere sono:
make menuconfig menù molto spartano, niente mouse. Sicuramente quello che da meno problemi!
make xconfig in questo c'è anche il mouse e si possono leggere, per la maggior parte delle componenti, delle piccole descrizioni
make gconfig utilizzabile con gnome, anche questo è grafico ma non aggiunge molto di più a xconfig
make kconfig questo è per kde, non l'ho mai provato ma penso sia simile a gconfig

Per il momento non mi metto a parlare di questa parte perché ci sono tantissime cose da scrivere, mi riservo un edit più avanti o un altro messaggio per parlare nel dettaglio delle varie componenti.
Sappiate solo che c'è la distinzione tra le componenti che finiscono nel kernel e i moduli, che possono essere caricati in modo indipendente. Volendo si può fare a meno dei moduli ma non mi sembra una grande idea.
Alla fine della configurazione ricordatevi di salvare (in menuconfig la voce è in fondo a tutto, negli altri si trova facilmente) in modo che, in caso di compilazioni successive, possiate risparmiarvi lo sbattimento.


Compilazione e installazione

Una volta usciti dal tool per la configurazione avrete salvato le vostre scelte ed è il momento di compilare.
Se avete una vecchia versione del kernel a questo punto è necessario il comando
make dep seguito da make clean.
Con i nuovi kernel non è più necessario, ma se avete già compilato una volta il kernel è meglio fare il make clean (non è invece necessario la prima volta).
A questo punto dovete compilare il kernel e (se presenti) i moduli
Lanciate questo comando
make && make modules && make modules_install
In questo modo compilate il kernel (make) e i moduli (make modules) installando questi ultimi (make modules_install).
Se avete un kernel 2.6 potete fare a meno del make modules quindi basta make && make modules_install.
E' meglio far eseguire i comandi uno dopo l'altro (con le &&) almeno potete andare a fare altro, dato che ci vorrà un po' per compilare kernel e moduli.

Una volta terminata l'installazione i moduli, come abbiamo detto, sono già al loro posto, bisogna solamente mettere il kernel al posto giusto.
Per farlo andate nella directory arch/i386/boot (da /usr/src/linux dove vi trovate ora).
Troverete un file chiamato bzImage, questo è il kernel appena compilato.
A questo punto copiatelo in /boot, rinominandolo in modo che si capisca di quale kernel si tratta. In genere si danno nomi che iniziano con vmlinuz, quindi la versione del kernel 2.6.6 potrebbe essere chiamata vmlinuz-2.6.6 anche se potete dare il nome che preferite. La cosa importante è quella di non sovrascrivere il kernel esistente!
Ricapitolando fate (da /usr/src/linux/arch/i386/boot)
cp bzImage /boot/vmlinuz-2.x.y
Quindi c'è un'ultima cosa da fare, dovete copiare il file /usr/src/linux/System.map nella cartella /boot
E' un file che serve più che altro per il debug del kernel ma meglio copiarlo (occupa pochissimo).

A questo punto resta da configurare il boot manager per far posto al nuovo kernel. Come vi ho detto prima NON sovrascrivete quello che esiste già, aspettate almeno di aver provato il nuovo. In caso contrario potreste ritrovarvi con un sistema inutilizzabile e con la necessità di far ricorso a un dischetto di boot o al cd di installazione.

Last edited by recoil on 13-05-2004 at 21:10

13-05-2004 20:50
Click Here to See the Profile for recoil Click here to Send recoil a Private Message Visit recoil's homepage! Find more posts by recoil Add recoil to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
pgr
.primate.

User info:
Registered: Apr 2003
Posts: 71 (0.01 al dì)
Location: Milano
Corso: T.I.&C.
Anno:
Time Online: 1 Day, 22:13:11 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Dal kernel 2.6.0 non è più necessario eseguire il comando "make modules" perchè il comando "make" dopo aver compilato il kernel
compila i drivers scelti come moduli.
Ricapitolando, per compilare il kernel (versione >= 2.6.0) basta editare:
make
make modules_install

13-05-2004 21:01
Click Here to See the Profile for pgr Click here to Send pgr a Private Message Find more posts by pgr Add pgr to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
recoil
dsy adminz

User info:
Registered: Mar 2002
Posts: 4454 (0.51 al dì)
Location: Milano / Erba
Corso: TICOM
Anno: laureato
Time Online: 61 Days, 16:17:45 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by pgr
Dal kernel 2.6.0 non è più necessario eseguire il comando "make modules" perchè il comando "make" dopo aver compilato il kernel
compila i drivers scelti come moduli.
Ricapitolando, per compilare il kernel (versione >= 2.6.0) basta editare:
make
make modules_install


hai ragione siccome c'è ancora chi compila i 2.4 avevo pensato di ometterlo ma a sto punto edito e faccio la distinzione

cmq grazie pgr per la puntualizzazione, se trovi altro dimmelo perché ho scritto la roba un po' di fretta e come dicevo va sicuramente migliorata
c'è di positivo che di sicuro non ho messo comandi per la distruzione del vostro pc :D

Last edited by recoil on 13-05-2004 at 21:19

13-05-2004 21:08
Click Here to See the Profile for recoil Click here to Send recoil a Private Message Visit recoil's homepage! Find more posts by recoil Add recoil to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
DeepBlue
tired guy

User info:
Registered: Sep 2003
Posts: 4258 (0.52 al dì)
Location: CSN
Corso: Info tlc
Anno:
Time Online: 52 Days, 8:40:31 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Mi chiedevo: non manca un make bzImage da qualche parte?
O è sostituito da qualche altra operazione che hai elencato?

__________________
~ get Debian! ~ get FreeBSD! ~ get OpenBSD! ~

21-05-2004 11:18
Click Here to See the Profile for DeepBlue Click Here to See the Blog of DeepBlue Click here to Send DeepBlue a Private Message Find more posts by DeepBlue Add DeepBlue to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Hamish
.illuminato.

User info:
Registered: Oct 2003
Posts: 151 (0.02 al dì)
Location: Milano
Corso: Informatica
Anno: 2
Time Online: 6 Days, 7:29:44 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by DeepBlue
Mi chiedevo: non manca un make bzImage da qualche parte?
O è sostituito da qualche altra operazione che hai elencato?


con il 2.6.X basta il make che crea direttamente il bzImage in
/usr/src/linux/arch/..?../boot

interessanti sono anche
code:
make modules

che crea singoli moduli da ricopiare a manina in /lib/modules/2.6.6/

code:
make install


che copia automaticamente il system.map e il bzImage nella /boot


code:
make xconfig

e' dipendente da sistemi su cui sono installate le librerie QT
code:
make gconfig

utilizza al contrario di xconfig le piu' universali GTK

:)

Last edited by Hamish on 21-05-2004 at 13:52

21-05-2004 13:20
Click Here to See the Profile for Hamish Click here to Send Hamish a Private Message Find more posts by Hamish Add Hamish to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
All times are GMT. The time now is 03:20.    Post New Thread    Post A Reply
  Last Thread   Next Thread
Show Printable Version | Email this Page | Subscribe to this Thread | Add to Bookmarks

Forum Jump:
Rate This Thread:

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
 

Powered by: vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento | Licenze | Thanks | Syndacate
Pagina generata in 0.060 seconds (49.71% PHP - 50.29% MySQL) con 25 query.