Pagina 1 di 2

Moduli e ricompilazione

Inviato: dom 29 ott 2006, 21:21
da Osvardo
Dopo aver installato il kernel 2.6.18.1(eseguito correttamente),mi accorgo che all'avvio del sistema mi carica i vecchi moduli del vecchio kernel 2.4.33.E' normale o c'è una procedura per abilitare il caricamento dei nuovi moduli ricompilati?
Grazie

Inviato: dom 29 ott 2006, 22:24
da samiel
Non è normale, ma se li hai compilati (make modules)
e installati (make modules_install) dovrebbero essere
avviati automaticamente... Infatti, da /etc/rc.d/rc.S:

Codice: Seleziona tutto

# This loads any kernel modules that are needed.  These might be required to
# use your ethernet card, sound card, or other optional hardware.
# Priority is given first to a script named "rc.modules.local", then
# to "rc.modules-$FULL_KERNEL_VERSION", and finally to the plain "rc.modules".
# Note that if /etc/rc.d/rc.modules.local is found, then that will be the ONLY
# rc.modules script the machine will run, so make sure it has everything in
# it that you need.
if [ -x /etc/rc.d/rc.modules.local -a -r /proc/modules ]; then
  echo "Running /etc/rc.d/rc.modules.local:"
  /bin/sh /etc/rc.d/rc.modules.local
elif [ -x /etc/rc.d/rc.modules-$(uname -r) -a -r /proc/modules ]; then
  echo "Running /etc/rc.d/rc.modules-$(uname -r):"
  . /etc/rc.d/rc.modules-$(uname -r)
elif [ -x /etc/rc.d/rc.modules -a -r /proc/modules -a -L /etc/rc.d/rc.modules ]; then
  echo "Running /etc/rc.d/rc.modules -> $(readlink /etc/rc.d/rc.modules):"
  . /etc/rc.d/rc.modules
elif [ -x /etc/rc.d/rc.modules -a -r /proc/modules ]; then
  echo "Running /etc/rc.d/rc.modules:"
  . /etc/rc.d/rc.modules
fi

Inviato: dom 29 ott 2006, 23:24
da urka58
Guarda che non carica i moduli del 2.4.33...
Tenta solamente di caricare i moduli "omonimi" del 2.6.18.
Togli il link da /etc/rc.d/rc.modules ----> /etc/rc.d/rc.modules-2.4.33 , crea un /etc/rc.d/rc.modules-2.6.18 e commenta/decommenta secondo necessità.
Ciao

Inviato: dom 29 ott 2006, 23:42
da Osvardo
urka58 ha scritto:Guarda che non carica i moduli del 2.4.33...
Tenta solamente di caricare i moduli "omonimi" del 2.6.18.
Togli il link da /etc/rc.d/rc.modules ----> /etc/rc.d/rc.modules-2.4.33 , crea un /etc/rc.d/rc.modules-2.6.18 e commenta/decommenta secondo necessità.
Ciao
OK ! Provo

Inviato: lun 30 ott 2006, 8:52
da samiel
Io uso di default il 2.6.18 e ho cancellato il vecchio link
sostituendolo con uno al 2.6.18. Tuttavia all'avvio, se suo
il 2.4, carica correttamente i suoi moduli. Per cui, in sé,
il link non è decisivo...

M.

Inviato: lun 30 ott 2006, 9:02
da Paoletta
samiel ha scritto:Io uso di default il 2.6.18 e ho cancellato il vecchio link
sostituendolo con uno al 2.6.18. Tuttavia all'avvio, se suo
il 2.4, carica correttamente i suoi moduli. Per cui, in sé,
il link non è decisivo...

M.
già...in pratica ti basta creare un file di nome /etc/rc.d/rc.modules-2.6.18 contenente i moduli necessari e renderlo eseguibile...

Inviato: mar 31 ott 2006, 14:39
da Osvardo
Paoletta ha scritto:
samiel ha scritto:Io uso di default il 2.6.18 e ho cancellato il vecchio link
sostituendolo con uno al 2.6.18. Tuttavia all'avvio, se suo
il 2.4, carica correttamente i suoi moduli. Per cui, in sé,
il link non è decisivo...

M.
già...in pratica ti basta creare un file di nome /etc/rc.d/rc.modules-2.6.18 contenente i moduli necessari e renderlo eseguibile...
Non ho capito se è solo un problema di nominativo,ossia nel boot di avvio scrive che carica i moduli "2.4.33.3",ma in realtà carica i nuovi "2.6.18.1".Potreste cortesemente dirmi come fare (comandi specifici)per eseguire la procedura che mi avete suggerito?
Grazie per la disponibilità ed i consigli

Inviato: mar 31 ott 2006, 14:58
da samiel
Non devi fare nulla. Nel pezzo di /etc/rc.d/rc.S che ho riportato
trovi la risposta alla tua domanda. Se il sistema trova
un file rc.modules.local fa partire quelli. Poi, con uname -r
trova il kernel che ha caricato e di conseguenza carica
i moduli opportuni. Prova a dare uname -r e vedrai
che ti dice che kernel stai usando.

M.

Inviato: mar 31 ott 2006, 15:21
da Osvardo
samiel ha scritto:Non devi fare nulla. Nel pezzo di /etc/rc.d/rc.S che ho riportato
trovi la risposta alla tua domanda. Se il sistema trova
un file rc.modules.local fa partire quelli. Poi, con uname -r
trova il kernel che ha caricato e di conseguenza carica
i moduli opportuni. Prova a dare uname -r e vedrai
che ti dice che kernel stai usando.

M.
Ho eseguito uname -r e mi dice che sto con il kernel esatto "2.6.18.1".
Dentro la directory /etc/rc.d/ ho (rc.modules -> rc.modules-2.4.33.3*) e (rc.modules-2.4.33.3*). Devo rinominarli in modo che al boot di sistema mi scriva che carica i moduli 2.6.18.1? O devo crearne di nuovi(eseguibile e link)? Se si,potresti dirmi come fare?
Grazie

Inviato: mar 31 ott 2006, 16:43
da samiel
Non è che ti dice che carica i moduli del 2.6.18.1
se invece carica gli altri... mica è un imbroglione!
Ma... quando hai compilato il kernel (a questo punto
mi sorge il dubbio) non hai compilato e installato
anche i suoi moduli??

M.

Inviato: mar 31 ott 2006, 17:22
da Osvardo
samiel ha scritto:Non è che ti dice che carica i moduli del 2.6.18.1
se invece carica gli altri... mica è un imbroglione!
Ma... quando hai compilato il kernel (a questo punto
mi sorge il dubbio) non hai compilato e installato
anche i suoi moduli??

M.
Credo di si. Come da procedura ho settato il config con make menuconfig,poi ho compilato con il make e successivamente ho dato il comando make modules_install. Forse dovevo fare prima "make modules"(ossia prima di make modules_install)? Perchè nelle guide che ho seguito non è riportato nessun comando "make modules".Infatti questo comando me lo avevi già specificato sopra nel precedente post,e già mi era sorto il dubbio che potesse essere quello il problema.Se è cosi,si capisce tutto.
Grazie

Inviato: mar 31 ott 2006, 18:26
da samiel
Prima make modules, e poi make modules_install.
Ma scusa, non puoi guardare se hai solo /lib/modules/2.4.33.3
oppure anche /lib/modules/2.6.18.1, così tagli la testa al toro?

M.

Inviato: mar 31 ott 2006, 19:06
da dapuzz
samiel ha scritto:Prima make modules, e poi make modules_install.
Anche se non è sbagliato, dalla serie 2.6 il make modules è "incluso" nel make senza argomenti.
In ogni caso make modules_install fallisce se i moduli non sono stati compilati. :)

Inviato: mar 31 ott 2006, 20:44
da Osvardo
samiel ha scritto:Prima make modules, e poi make modules_install.
Ma scusa, non puoi guardare se hai solo /lib/modules/2.4.33.3
oppure anche /lib/modules/2.6.18.1, così tagli la testa al toro?

M.
In /lib/modules ho "2.4.33.3" - "2.6.17.13" - "2.6.18.1"
Dammi indicazioni sui comandi che debbo digitare per fargli prendere i moduli del 2.6.18.1.

Inviato: mar 31 ott 2006, 20:53
da samiel
In teoria non dovresti fare nulla. Hai provato
a fare il nuovo link simbolico?

M.