PDA

View Full Version : [debian] boot e kernel


figulus
09-06-2005, 01:12
Ho una serie di kernel installati, che posso scegliere all'avvio con grub. I kernel sono compilati in modo diverso, alcuni hanno dei driver statici, altri come moduli, altri non li hanno proprio.
Ma la lista dei moduli da caricare all'avvio è determinata in modo uguale per tutti i kernel dagli script di /etc/init.d e da /etc/modules, quindi capita che a volte il kernel cerchi di caricare un modulo già caricato o che non è presente nel kernel.
Anche personalizzandi i runlevel 2,3,4 e 5 in modo diverso il file inittab è sempre uno solo. Come si fa a potere scegliere quali moduli caricare a seconda del kernel scelto all'avvio? :confused:

Immagino si dabbano passare dei parametri al kernel in fase di boot...

Inoltre non mi è chiaro se compilando il kernel debba scegliere o meno di attivare initrd, ho provato a ricompilare il kernel 2.6.8 di default aggiungendo il supporto al framebuffer ma all'avvio lo schermo diventa nero e il sistema si blocca...
Sono un po' :confused: Chi mi sa spiegare?

Psycotic
09-06-2005, 08:42
mmm
Mi sa che stai facendo un po' di confusione..

i moduli nn centrano in genere con init.d e con inittab nn sono neanche parenti..

i moduli che carichi al boot che sono pochissimi li trovi dentro l'immagine di initrd e servono in genere x caricare i moduli necessari x montare le partizioni..
Gli altri poi li carica tramite /etc/modules oppure tramite hotplug, altri si caricano x dipendenze mi sembra..

magri se spieghi cosa nn ti piace qui ti diamo una mano..

RaouL_BennetH
09-06-2005, 09:05
Inoltre, i moduli vengono scelti in base al kernel che scegli all'avvio. Mi spiego:

Se hai in avvio il 2.4.30 e il 2.6.11, se scegli il 2.6.11 lui carica i moduli da:

/lib/modules/2.6.11

se invece scegli il 2.4.30 li sceglierà da /lib/modules/2.4.30

non succede che i moduli vengano presi "indifferentemente" a prescindere dal kernel che booti.

Poi, se ad esempio parti col 2.6.x e durante la sessione, carichi dei moduli al volo con modprobe o insmod, finita la sessione, se riparti con lo stesso kernel te li ritrovi, ma se parti con un kernel differente ovviamente no.

figulus
09-06-2005, 11:16
Grazie. :D :p

Dunque, quando compilo il kernel "alla debian" e poi installo il .deb con dkpg lui mi va a creare anche una nuova cartella /lib/modules/versionenuovokernel ?

In secondo luogo, quando ho compilato con make-kpkg non ho messo l'opzione --initrd, avrei forse dovuto metterla? Ho visto dal menu.lst che gli altri kernel usano initrd. Il kernel che ho compilato col framebuffer dà schermata nera all'avvio, e credo che sia proprio un problema relativo al framebuffer...

Comunque il mio problema è il seguente. Il kernel di default, a parte non utilizzare il framebuffer (e per una questione estetica mi piacerebbe che lo avesse per fare una cosa come questa (http://www.gentoo.it/tips/FramebufferAndBoot.html) ) ci sta un minuto e mezzo a caricarsi, perché non riesce ad inserire dei moduli e perché ne inserisce altri che non mi servono.

Vorrei snellire il procedimento ma non so bene dove mettere le mani, se modificare gli script di hotplug, di init.d, o ricompilare il kernel senza il supporto alle cose che non ho o entrambe le cose...