Wie verhindert man das Laden von Modulen beim Booten ?

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
kagan
Beiträge: 3
Registriert: 27.09.2006 13:09:17

Wie verhindert man das Laden von Modulen beim Booten ?

Beitrag von kagan » 27.09.2006 16:21:04

Hallo,

die erwähnte Frage scheint einige Leute im Netz zu beschäftigen - leider fanden sich bisher keine durchschlagenden Lösungen.

Hier das Problem:

Ich habe einen alten Pentium 200 wieder flottgemacht, er hat ein SCSI-Interface (aic 7880) auf dem Mainboard - leider stellte sich recht schnell heraus, dass das defekt ist - es speichert nicht mehr die Einstellungen, die ihm vorgegeben werden. Wohlgemerkt - die SCSI-Einstellungen werden nicht gespeichert, der Rest ist ok.

Dem Rechner habe ich eine Debian-Test-Version verpasst - Kernel 2.6.17 - alles funktioniert so weit ganz gut - mit einer kleinen Ausnahme. Entweder ich hänge an den defekten SCSI-Controller ein Gerät - in diesem Falle einen alten CD-Brenner von Plextor, oder ohne 'Terminierung' kommt beim Booten die Kernel-Meldung 'SCSI-0 Someone did reset Channel 0' (oder so ähnlich) (dieser Fehler ist bei aic7xxx übrigens wohlbekannt - es ist wohl ein Treiber-Bug, kein Fehler wegen meiner defekten Hardware). Also beschwert sich der eigentlich im Bios abgeschaltete SCSI-Controller darüber, dass er nicht benutzt wird. Der Treiber befindet dann in einem Endlos-Loop, was den Boot-Prozess faktisch abricht.

Es mir bisher nicht gelungen, ein Laden des Treibers aic7xxx beim Booten zu unterbinden. Ich habe es mit 'skip aic7xxx' in /etc/discover.conf versucht, habe 'aic7xxx' in /etc/modules.d/ geblacklisted - auch einiges anderes - langsam bin ich soweit, dass ich das Modul umbenenne. Naja Kernel neu kompilieren ist vielleicht besser... :-)

Eine elegantere, die RICHTIGE Lösung, würde ich aber vorziehen - kennt sie jemand ? Zumal da sicher noch das ein oder andere Modul wäre, das ich gleich mit rausschmeissen würde...

Es werden viele Möglichkeiten beschrieben, das Problem zu lösen, meist steht aber direkt schon im Anschluss: 'Hat leider nicht funktioniert...'.

Also: Wie ist dieser Mechanismus bei Debian und Kernel 2.6.17 - findet man irgendwo eine Beschreibung, die die Beteiligten Mechanismen ausführlich beschreibt? Ich habe mir eine ganze Nacht damit um die Ohren geschlagen und bin nicht zum Ziel gekommen. HILFÄÄÄÄÄ !

Grüße und ein Danke im Voraus,

kagan

C167
Beiträge: 468
Registriert: 06.04.2006 08:55:20
Lizenz eigener Beiträge: MIT Lizenz
Kontaktdaten:

Beitrag von C167 » 27.09.2006 16:38:50

wie hast du ihn geblacklistet? wenn du ihn in die /etc/modprobe.d/blacklist eingetragen hast wird er trotzdem geladen? sehr komisch... oder die blacklist funktioniert beim debian-2.6.17 nicht, evbug(.c) wird ja trotz blacklisting geladen...

kagan
Beiträge: 3
Registriert: 27.09.2006 13:09:17

...genau das habe ich getan...

Beitrag von kagan » 27.09.2006 17:23:26

...durch Eintrag der Zeile 'blacklist aic7xxx' in die Datei /etc/modprobe.d/blacklist.

Hat nicht funktioniert - übrigens nicht nur bei mir...

Mir kam aber folgender Gedanke. Während der Installation des Grundsystems habe ich - vielleicht etwas unbedacht - möglicherweise von Kernel 2.4.x auf 2.6.17 upgedated - sicher bin ich nicht - der Installationsprozess per 'netinstall' war langwierig und als dann nachher die Frage nach dem Update kam, war ich etwas genervt und vielleicht auch voreilig. Das ich einen neuen Kernel installiert habe ist klar - nur ich habe einfach nicht darauf geachtet, welcher vorher drauf war...

Jedenfalls bin ich mir nicht sicher, ob ich momentan nicht 'zwei Konfigurationsmechanismen' für die Problematik an Bord habe, die sich gegenseitig behindern.

Folgende Verzeichnisse und Dateien existieren :
/etc/discover.conf
/etc/discover.conf-2.6
/etc/discover.conf.d/
/etc/discover.d/
/etc/hotplug/blacklist.d/
/etc/hotplug.d/
/etc/modprobe.d/
/etc/modutils/.
/etc/modules
/etc/modules.conf

Ist da vielleicht irgendetwas redundant ? Was sich vielleicht gegenseitig behindert ?

Grüße

kagan

glar00k
Beiträge: 790
Registriert: 09.07.2002 23:01:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dresden

Beitrag von glar00k » 27.09.2006 19:49:43

Hi,

damit die blacklist funktioniert, muss die initrd erst neu angepasst werden. Dazu reicht ein "update-initramfs -u" als root.

Grüße

kagan
Beiträge: 3
Registriert: 27.09.2006 13:09:17

Sie erhalten 100 von 100 möglichen Punkten !

Beitrag von kagan » 27.09.2006 23:13:49

Danke - auch wenn ich die Hintergründe noch nicht ganz durchblicke - das war es !
Thats it.
Mal sehen, was 'wer noch so alles rausschmeissen können, grins, kicher... :-)

Grüße

kagan

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 27.09.2006 23:28:49

Die Initrd muß aus dem Grung neu geschrieben werden , wenn das Modul da schon geladen wird , dan nutzt dir auch das Blacklisten nix. Oder der Eintrag in der discover.conf . Discover schmeiß ich übrigens immer sofort runter bei einer Neuinstallation.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Antworten