Repository 32bit  Forum
Repository 64bit  Wiki

Dubbio compilazione Kernel

Usate questo forum per proporre nuovi articoli, creare gruppi di lavoro, segnalare problemi, collaborare in genere al progetto Wikislacky.

Moderatore: Staff

Regole del forum
1) Citare l'eventuale nome e link dell'articolo della wiki.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

Dubbio compilazione Kernel

Messaggioda RedSkull92 » dom ott 25, 2009 23:45

Quì: http://www.slacky.eu/wikislack/index.ph ... _Slackware
Nella parte che si riferisce a Compilazione Nuovo Kernel Serie 2.6.xx dice di prendere il kernel nella seguente path:
arch/x86/boot/bzImage /boot/vmlinuz-2.6.xx

mentre nella parte che si riferisce a Ricompilazione Kernel Serie 2.6.xx dice di prendere il kernel nella seguente path:
/usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.xx-new
ora mi domando... è un'errore oppure è giusto così ?

poi nella parte per compilare dice di fare così:
Codice: Seleziona tutto
# make -j5 modules
# make modules_install

ma non è la stessa cosa fare
Codice: Seleziona tutto
make ; make modules_install

?
Lo dico perchè questa cosa mi ha creato parecchia confusione...
GRAZIE
Avatar utente
RedSkull92
Linux 2.6
Linux 2.6
 
Messaggi: 553
Iscritto il: mar apr 21, 2009 16:25
Località: Palermo
Slackware: 64bit -current
Kernel: 3.5.4
Desktop: FluxBox

Re: Dubbio compilazione Kernel

Messaggioda zxzxasas » dom ott 25, 2009 23:57

Secondo me prima di ricompilare il kernel devi farti un poco di chiarezza su quello che stai facendo...

Comunque...

bzImage sarebbe l' immagine del kernel. E si trova nella directory /path/to/source/arch/x86/boot/bzImage.
La prima guida da per scontato che ti trovi nel path to source, la seconda da per scontato che tu abbia usato la directory classica in cui si mettono i sorgenti (/usr/src/linux). Ma come vedi è praticamente la stessa cosa.

Poi, passiamo alla compilazione.
digitando `make` sostituisci la successione `make bzImage` `make modules`. Sostanzialmente, compili la bzImage (la parte statica) e modules (i moduli, la parte modulare).
`make modules_install` copia i moduli compilati nelle giuste directory.

il -j5 avvia 5 processi di compilazione paralleli.

Infine, /boot/vmlinuz-2.6blablabla sarebbe ciò che dovrai indicare a lilo/grub. Anche in questo caso, è una standardizzazione, perchè potresti chiamare il file con un nome qualsiasi!
zxzxasas
Linux 2.4
Linux 2.4
 
Messaggi: 397
Iscritto il: sab nov 15, 2008 2:28
Nome Cognome: Pasquale
Slackware: current
Kernel: 2.6.35.7
Desktop: KDE 4.5.2

Re: Dubbio compilazione Kernel

Messaggioda RedSkull92 » lun ott 26, 2009 14:15

Grazie, ma io ho notato GIUSTAMENTE che la path è diversa...
cioè quì dice di prendere il kernel in
arch/x86/boot/bzImage /boot/vmlinuz-2.6.xx


mentre li dice di prenderlo da un'altra directory
arch/i386/boot/bzImage /boot/vmlinuz-2.6.xx-new

come mai questo cambiamento ?
Avatar utente
RedSkull92
Linux 2.6
Linux 2.6
 
Messaggi: 553
Iscritto il: mar apr 21, 2009 16:25
Località: Palermo
Slackware: 64bit -current
Kernel: 3.5.4
Desktop: FluxBox

Re: Dubbio compilazione Kernel

Messaggioda metrofox » lun ott 26, 2009 14:22

Nulla di grave, forse può essere la compilazione stessa che salva l'immagine in quella path di default(anche se non credo) o forse la salva lì per la tua architettura... Nulla di così curioso o anormale :)
Avatar utente
metrofox
Linux 2.6
Linux 2.6
 
Messaggi: 758
Iscritto il: gio ago 07, 2008 11:29
Slackware: slackware64-current
Kernel: 3.4.4-ck3
Desktop: FluxBox-1.3.1
Distribuzione: FreeBSD-8.1(amd64)

Re: Dubbio compilazione Kernel

Messaggioda RedSkull92 » lun ott 26, 2009 15:40

ma è piuttosto strano .
cioè nella guida dice questo:
dopo un certo periodo che dipende ovviamente dalla velocità del vostro sistema vi troverete l'immagine del Kernel pronta in /usr/src/linux/arch/i386/boot/.

ma poi ti fà prelevare il kernel da un'altra directory
arch/x86/boot/bzImage


che senso avrebbe ?
Di sicuro è stata una svista da parte dell'autore, ma per un'argomento tanto delicato penso sia meglio definire per bene da dove prelevare il kernel (io l'ho sempre prelevato da arch/x86/boot/bzImage)
Avatar utente
RedSkull92
Linux 2.6
Linux 2.6
 
Messaggi: 553
Iscritto il: mar apr 21, 2009 16:25
Località: Palermo
Slackware: 64bit -current
Kernel: 3.5.4
Desktop: FluxBox

Re: Dubbio compilazione Kernel

Messaggioda brainvision » lun ott 26, 2009 18:22

ma mi sa che l'architettura i386 nel kernel dal 2.6 in poi non è più prevista.. da allora c'è x86 e basta.. non ricordo dove di preciso, ma se neparlava in un'altra discussione qui nel forum di slacky.eu. Io da quando ricompilo il kernel ho sempre trovato x86.. ed ha sempre funzionato, quindi fidati e vai avanti.. ok?
Avatar utente
brainvision
Packager
Packager
 
Messaggi: 756
Iscritto il: ven dic 26, 2008 18:23
Località: bologna (bo)
Nome Cognome: Leonardo Totaro
Slackware: x86_64-current
Kernel: 3.7.1
Desktop: xfce 4.10

Re: Dubbio compilazione Kernel

Messaggioda RedSkull92 » lun ott 26, 2009 21:43

sisi tranquillo io ho sempre fatto così, ma era per avvertire gli autori così da poter correggere/modificare il wiky :)
Avatar utente
RedSkull92
Linux 2.6
Linux 2.6
 
Messaggi: 553
Iscritto il: mar apr 21, 2009 16:25
Località: Palermo
Slackware: 64bit -current
Kernel: 3.5.4
Desktop: FluxBox

Re: Dubbio compilazione Kernel

Messaggioda metrofox » mar ott 27, 2009 16:58

brainvision ha scritto:ma mi sa che l'architettura i386 nel kernel dal 2.6 in poi non è più prevista.. da allora c'è x86 e basta.. non ricordo dove di preciso, ma se neparlava in un'altra discussione qui nel forum di slacky.eu. Io da quando ricompilo il kernel ho sempre trovato x86.. ed ha sempre funzionato, quindi fidati e vai avanti.. ok?


Perché questo cambio? :)
Avatar utente
metrofox
Linux 2.6
Linux 2.6
 
Messaggi: 758
Iscritto il: gio ago 07, 2008 11:29
Slackware: slackware64-current
Kernel: 3.4.4-ck3
Desktop: FluxBox-1.3.1
Distribuzione: FreeBSD-8.1(amd64)

Re: Dubbio compilazione Kernel

Messaggioda Toxoz » mar nov 03, 2009 6:49

Io invece ho un altro dubbio .... come faccio poi a togliere un kernel più vecchio che ormai non uso più ? Per ora mi va bene avere due kernel ... quello di default e quello stabile più recente .... ma appena uscirà la prima versione stabile del 2.6.32 ... come faccio a togliere quello che uso? Devo dare make clean nella directory dei sorgenti?
Avatar utente
Toxoz
Linux 2.0
Linux 2.0
 
Messaggi: 140
Iscritto il: mer set 09, 2009 12:28
Località: Catania,Sicilia
Nome Cognome: Antonio Sciuto
Distribuzione: Fedora 14

Re: Dubbio compilazione Kernel

Messaggioda brainvision » mar nov 03, 2009 8:55

no, non c'è bisogno, basta eliminare tutte le directory che si riferiscono a quel kernel. oltre naturalmente ai file in /boot..
Quindi
Codice: Seleziona tutto
/lib/modules/linux-xxxx
/usr/src/linux-xxxx

Dare un
Codice: Seleziona tutto
make clean

ti serve più che altro nel caso tu voglia ritornare ad avere i sorgenti "puliti" eliminando ogni riferimento creato dal precedente .config..
Avatar utente
brainvision
Packager
Packager
 
Messaggi: 756
Iscritto il: ven dic 26, 2008 18:23
Località: bologna (bo)
Nome Cognome: Leonardo Totaro
Slackware: x86_64-current
Kernel: 3.7.1
Desktop: xfce 4.10

Re: Dubbio compilazione Kernel

Messaggioda Jan69 » dom gen 09, 2011 10:36

RedSkull92 ha scritto:ma è piuttosto strano .
cioè nella guida dice questo:
dopo un certo periodo che dipende ovviamente dalla velocità del vostro sistema vi troverete l'immagine del Kernel pronta in /usr/src/linux/arch/i386/boot/.

ma poi ti fà prelevare il kernel da un'altra directory
arch/x86/boot/bzImage


che senso avrebbe ?
Di sicuro è stata una svista da parte dell'autore, ma per un'argomento tanto delicato penso sia meglio definire per bene da dove prelevare il kernel (io l'ho sempre prelevato da arch/x86/boot/bzImage)

Guarda, io stamattina per la mia Slack64, e col tuo stesso dubbio, ho digitato un bel
Codice: Seleziona tutto
bash-4.1# cp arch/x86_64/boot/bzImage /boot/vmlinuz-2.6.36.2

e tutto e' andato a buon fine.
Adesso sono andato a vedere cosa c'e' in arch/x86_64/boot/ (visto che bash al momento mi faceva completare ogni cosa digitassi) e mi ritrovo
Codice: Seleziona tutto
lrwxrwxrwx 1 zx zx   22 Jan  9 08:34 bzImage -> ../../x86/boot/bzImage

Per cui credo che il sistema compili in automatico in base alla tua architettura e poi si limiti a linkare l'immagine che ha creato.
Magari se passa qualche guru puo' essere piu' preciso ;)
Jan69
Linux 1.0
Linux 1.0
 
Messaggi: 39
Iscritto il: dom nov 28, 2010 1:55
Slackware: 64 -current
Kernel: 2.6.37.4
Desktop: KDE 4.5.5

Re: Dubbio compilazione Kernel

Messaggioda albatros » dom gen 09, 2011 12:42

RedSkull92 ha scritto:Quì: http://www.slacky.eu/wikislack/index.ph ... _Slackware
Nella parte che si riferisce a Compilazione Nuovo Kernel Serie 2.6.xx dice di prendere il kernel nella seguente path:
arch/x86/boot/bzImage /boot/vmlinuz-2.6.xx

mentre nella parte che si riferisce a Ricompilazione Kernel Serie 2.6.xx dice di prendere il kernel nella seguente path:
/usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.xx-new
ora mi domando... è un'errore oppure è giusto così ?

Il bzImage nella directory i386 è semplicemente un link simbolico, come segnalato anche da Jan69 per x86_64.
Codice: Seleziona tutto
/usr/src/linux-2.6.37/arch/i386/boot$ ls -l
totale 0
lrwxrwxrwx 1 root root 22 gen  7 22:34 bzImage -> ../../x86/boot/bzImage
Avatar utente
albatros
Iper Master
Iper Master
 
Messaggi: 2056
Iscritto il: sab feb 04, 2006 13:59
Località: 43°52' N 11°32' E
Slackware: current 64bit
Kernel: 3.8.4
Distribuzione: ubuntu 12.04

Re: Dubbio compilazione Kernel

Messaggioda conraid » dom gen 09, 2011 12:53

nel 2.6.24 uscito a gennaio 2008 è stato unificato il codice x86_64 e i386

da KN
When support for the x86-64 AMD architecture was developed, it was decided to develop it as a "fork" of the traditional x86 architecture for comodity reasons. Many patches needed to patch a file in the i386 architecure directory, and another similar patch for the duplicated file in the x86_64 directory. It has been decided to unify both architectures in the same directory again.

This reunification has not been done in a radical way. In this release, both architectures have been unified in arch/x86, but only in appearance. All the source files in i386 and x86-64 directories have been moved to arch/x86, but renaming them with "_32" and "_64" suffixes. Ex: arch/i386/kernel/reboot.c has been moved to arch/x86/kernel/reboot_32.c, and arch/x86_64/kernel/reboot.c has been moved to arch/x86/kernel/reboot_64.c. Makefiles have been modified accordingly. So for now the reunification has been pretty much just a relocation of all the files and adaptation of the build machinery to make it compile just as it'd have been compiled in the old separated directories, done mostly with scripts.

In the future lots of those files will be unified and shared by both architectures, ex. reboot_32.c and reboot_64.c into reboot.c, and many files have already been unified in this release. Others will keep separated forever, due to the differences between both architectures.


Per l'unificazione dei singoli file le cose non sono ancora state completate, se guardate nei sorgenti i citati reboot_32 e reboot_64 ora sono un unico file, ma esistono ancora altri file separati
Avatar utente
conraid
Staff
Staff
 
Messaggi: 12001
Iscritto il: mer lug 13, 2005 23:00
Località: Livorno
Nome Cognome: Corrado Franco
Slackware: current

Re: Dubbio compilazione Kernel

Messaggioda Jan69 » dom gen 09, 2011 23:59

conraid ha scritto:da KN

E' vero!!! 8)

M'ero totalmente dimenticato di Kernel Newbies, grazie! :D
Jan69
Linux 1.0
Linux 1.0
 
Messaggi: 39
Iscritto il: dom nov 28, 2010 1:55
Slackware: 64 -current
Kernel: 2.6.37.4
Desktop: KDE 4.5.5


Torna a Wikislacky

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti