Newsgroup: it.comp.os.linux.iniziare
Titolo: Compilare kernel & mrshark howto

Ho ricompilare il kernel 2.2.18pre21 di Debian seguendo l'howto di
mrshark. Il file /usr/src/linux/arch/i386/bzImage e` stato creato. A
questo punto l'howto dice: ``Fatto questo, controllate se nella
directory /boot esistono i seguenti file: ls -l /boot/System.map
/boot/vmlinuz''
Bene, /boot/vmlinuz esiste e punta a /boot/vmlinuz-2.2.18pre21, ma
/boot/System.map non esiste, esiste invece
/boot/System.map-2.2.18pre21. E ora?
In piu` esiste un file /boot/map, non so se c'entra qualcosa, ma
lilo.conf riporta quanto segue:
boot=/dev/hda
compact
install=/boot/boot.b
map=/boot/map
...eccetera.
Poi mi ritrovo non solo bzImage di cui sopra, ma anche un vmlinux in
/usr/src/linux grosso piu` del doppio di bzImage (che e` circa mezzo
mega). Nome ``sospetto''... c'entra qualcosa pure lui?
Ora, ho comunque installato il nuovo kernel, ponendolo in /boot/ e
aggiungendo le seguenti righe a lilo.conf:
image=/boot/bzImage
label=try
...il tutto lasciando invariate le righe precedenti di lilo che si
riferivano al vecchio kernel, per riutilizzarlo nel caso di
problemi con il nuovo. Poi ho dato ``lilo -v''.
Al reboot con il nuovo kernel va tutto bene, eccetto il fatto che
trovo questa riga:
Warning: /boot/System.map-2.2.18pre21 does not match kernel data.
...il che mi pare ragionevole visto che non l'ho sostituito. Domande:
- Come fa il kernel a sapere che deve cercare la mappa in
/boot/System.map-2.2.18pre21 e non in /boot/System.map?
- System.map ha qualcosa a che fare con il ``map file'' specificato
nella configurazione di lilo che e` di default su /boot/map?
- Come fare a tenere in modo pulito piu` di un kernel? Sembra che si
possano specificare piu` immagini ma una sola mappa (che si riferisce
ad un solo kernel).
Inoltre, con il vecchio kernel avevo installato diversi moduli, che in
nel nuovo non ho compilato e quindi non sono piu` disponibili in
/lib/modules/2.2.18pre21. Cio` significa che, rebootando con il
vecchio kernel, il sistema non trova piu` molti dei moduli prima
configurati e presenta una sequela di modprobe falliti. Ovviamente,
prima di ``make modules_install'', anziche' cancellare la directory
dei vecchi, l'ho rinominata, ma come faccio a dirgli di cercare i
moduli per un kernel in una dir e quelli per l'altro in un'altra dir?
Massimiliano

Ciao Massimiliano,  anchio ho un problema simile.
Ho seguito appunti linux ed ho compilato un kernel monolitico con
all'interno i moduli hisax, isdn, audio pci, usb, ipm ecc.
Tutto è andato bene, all'infuori del fatto che mi ha cambiato la dir
/lib/modules/2.2.19 in 2.2.19.pre17.
Se avvio col vecchio kernel mi da noie perchè non trova i riferimenti nella
predetta dir, e anche se provo a rinominarla le cose non funzionano a
dovere.
Col nuovo kernel modprobe mi elenca una serie di fallimenti, dovuti
probabilmente ai moduli che vorrebbe caricare.
Sto conducendo un indagine in etc/modules.conf e un altra su 
debian.org
.
Forse escludendo i moduli che adesso vengono caricati dal nuovo kernel il
problema in parte si risolve.
restano da risolvere le altre dipendenze..
Ciao  ;-)
Jacobe

Ciao Massimiliano,
non so se ti puň essere utile..
mi sono preso la briga di tradurre il file modules dall'inglese
all'italiano, per mio uso personale, e per renderlo piů facilmente
consultabile.
Riguardo la compilazione del kernel e dei moduli soprattutto  mi ha
schiarito molto le idee.
Il file originario č quello presente nel cd di Debian, kernel 2.2.19.
Per evitare di postare qui, ho pensato di renderlo disponibile sullo spazio
web(illimitato :))  che da anni lasciavo in disparte nel dimenticatoio.
Puoi visionarlo all'indirizzo: 
http://digilander.iol.it/gcsoftware/
Spero ti sia utile.
Ciao,  Jacobe.
(ps. non č una traduzione perfetta, ma probabilmente contiene gli elementi
fondamentali)

Puoi visionarlo all'indirizzo: 
http://digilander.iol.it/gcsoftware/
Segnato, appena ip-uppo ci vado. :-)
Massimiliano