Wozu sind /etc/modules.conf bzw. /etc/modules da?
Wozu sind /etc/modules.conf bzw. /etc/modules da?
Hallo,
ich habe mir einen neuen Kernel 2.6.10 gebaut. Nach langem hin und her klappt nun der Bootprozess ohne großartige Fehlermeldungen.
Bezogen auf den Thread
http://www.debianforum.de/forum/viewtopic.php?t=38322
dennoch eine Frage:
Wozu gibt es die Dateien /etc/modules bzw. /etc/modules.conf?
Alles was mit Modulen zu tun hat, wird in der .config festgelegt, und nach dem kompilieren im Verz. /lib/modules/kernelversion abgelegt. Dann hat man doch schon alles was man braucht.
Wozu also diese beiden Dateien?
Diese werden bei einer Kompilierung nie angefasst.
Aus meiner Sicht macht es nur Sinn für Programme (z.b Alsa für Sound), die nachträglich installiert werden, und die für ihre Ausführung Module benötigen.
Aber selbst dafür müssen im Kernel die Voraussetzungen geschaffen sein, damit die Module geladen werden. Ohne Aktivierung im Kernel kein laden.
Selbst die Abhängigkeiten der Moudule untereinander sind in der Datei modules.dep festgelegt. Und diese liegt im Verz. /lib/modules/kernelversion.
Irgendwie ist bei mir das Rad nicht rund. Ich bekomme nicht den Zusammenhang zwischen den Modulen im Verzeichn. /lib/modules/kernelversion und der Datei /etc/modules bzw. /etc/modules.conf
Danke für eure Erklärungen
Dirk
ich habe mir einen neuen Kernel 2.6.10 gebaut. Nach langem hin und her klappt nun der Bootprozess ohne großartige Fehlermeldungen.
Bezogen auf den Thread
http://www.debianforum.de/forum/viewtopic.php?t=38322
dennoch eine Frage:
Wozu gibt es die Dateien /etc/modules bzw. /etc/modules.conf?
Alles was mit Modulen zu tun hat, wird in der .config festgelegt, und nach dem kompilieren im Verz. /lib/modules/kernelversion abgelegt. Dann hat man doch schon alles was man braucht.
Wozu also diese beiden Dateien?
Diese werden bei einer Kompilierung nie angefasst.
Aus meiner Sicht macht es nur Sinn für Programme (z.b Alsa für Sound), die nachträglich installiert werden, und die für ihre Ausführung Module benötigen.
Aber selbst dafür müssen im Kernel die Voraussetzungen geschaffen sein, damit die Module geladen werden. Ohne Aktivierung im Kernel kein laden.
Selbst die Abhängigkeiten der Moudule untereinander sind in der Datei modules.dep festgelegt. Und diese liegt im Verz. /lib/modules/kernelversion.
Irgendwie ist bei mir das Rad nicht rund. Ich bekomme nicht den Zusammenhang zwischen den Modulen im Verzeichn. /lib/modules/kernelversion und der Datei /etc/modules bzw. /etc/modules.conf
Danke für eure Erklärungen
Dirk
Das regele ich doch in der .config des Kernels. Dort lege ich doch die Dinge fest, die als Modul geladen werden sollen, wenn ich sie brauche. Ich kann doch nicht einfach in die /etc/modules was reinschreiben, ohne das die Abhängigkeiten gecheckt wurden./etc/modules = Module, die beim Starten geladen werden sollen
Dann brauche ich doch keine Dinge im Kernel als Modul festzulegen, sondern kann gleich alles in die /etc/modules reinschreiben.
Desweiteren werden die beiden Datein nach und vor der Kompilierung nicht angefasst.
Also brauch ich in der .config gar nicht als Modul zu machen, und gleich alles in die /etc/modules reinschreiben. Das ist aber Unsinn, weil dann die Abhängigkeiten nicht gecheckt werden. Also doch die Module im Kernel aktivieren.
Begreife nicht, warum im Kernel als Modul aktivieren, wenn ich dasselbe mit der /etc/modules erreiche.
Aktiviere ich etwas als Modul im Kernel und schreibe es zusätzlich als Modul in die /etc/modules, kommt garantiert eine Fehlermeldung während des bootens.
Also doch im Kernel aktivieren und nicht per Hand in der /etc/modules.
Irgendwie stehe ich wohl auf der Leitung
DIrk
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Bei der kernelkompilierung als Modul festlegen, und das Modul im Betrieb dann auch wikrlich laden sind 2 paar Stiefel. Anderenfalls wuerden Module ja keinen Sinn machen, wenn man sie nicht auch einfach gar nicht laden koennte. Dann koennte man auch komplett auf Module verzichten, und alles fest einbauen.
In der kernel Config legst Du nur fest, welche komponenten ueberhaupt als Modul verfuegbar sind, in /etc/modules legst Du fest, welche davon beim Booten automatisch geladen werden sollen, und in /etc/modules.conf legt man fest, wie genau die Module geladen werden sollen und mit welchen Geraeten sie fuer das automatische Laden von Modulen assoziiert werden sollen...
Patrick
In der kernel Config legst Du nur fest, welche komponenten ueberhaupt als Modul verfuegbar sind, in /etc/modules legst Du fest, welche davon beim Booten automatisch geladen werden sollen, und in /etc/modules.conf legt man fest, wie genau die Module geladen werden sollen und mit welchen Geraeten sie fuer das automatische Laden von Modulen assoziiert werden sollen...
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
- peschmae
- Beiträge: 4844
- Registriert: 07.01.2003 12:50:33
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: nirgendwo im irgendwo
und stellt dort auch sonst noch Parameter des Moduls ein.pdreker hat geschrieben:/etc/modules.conf legt man fest, wie genau die Module geladen werden sollen und mit welchen Geraeten sie fuer das automatische Laden von Modulen assoziiert werden sollen...
MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy
Alles was in der /etc/modules stand habe ich auskommentiert. Trotzdem werden die Module wie z.b. die Module für die Dateisysteme (vfat ...) während des bootens geladen, auch ohne das sie in der /.../modules drin stehen..../etc/modules legst Du fest, welche davon beim Booten automatisch geladen werden sollen...
Das ist doch der Sinn der Module, den Kernel schlank zu halten, und Dinge (Module) AUTOMATISCH zu laden, wenn sie gebraucht werden.
Du trennst die Dinge, in Festlegung was ein Modul ist (in der Config) - bis hier Übereinstimmung mit Dir - , und wer das Modul lädt. An dem Punkt gehen unsere Meinungen auseinander. Ich denke der Kernel ist auch für das LADEN zuständig, und nicht die /etc/modules.
Das mit der /etc/modules.conf leutet mir inzwischen ein.
Ich werde es wohl nicht begreifen.
Dennoch Danke für eure Hilfe
Dirk
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
/etc/modules laedt module zwangsweise. Einige Module koennen aus technischen Gruenden nicht automatisch geladen werden, und fuer diese ist dann /etc/modules...
Patrick
Ahem... Das ist kein *Meinung* sondern *Wissen*... Ich stell mich hier nicht hin und gebe Mutmassungen zum besten, und wenn doch, dann schreibe ich das dazu... Module, die in /etc/modules stehen werden ohne weiteren Check beim Booten geladen. Das ist eine Tatsache. Dass es noch ein paar andere Mechanismen gibt, die Module laden koennen, ist kein Widerspruch (siehe z.B. hotplug).An dem Punkt gehen unsere Meinungen auseinander. Ich denke der Kernel ist auch für das LADEN zuständig, und nicht die /etc/modules.
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
Auch hier liegst du falsch: Module wurden aus zwei Gründen eingeführt: Zum einen aus lizenzrechtlichen Gründen (Module müssen nicht zwangsweise unter GPL stehen) und zum anderen aus Sicherheits- und Größengründen: Durch Module kann man z.B: gezielt Funktionalitäten aus dem Kernel entfernen und so die Größe vermindern und auch die Sicherheit des Systems stärken (was nicht da ist, kann nicht angegriffen werden).Pix hat geschrieben: Das ist doch der Sinn der Module, den Kernel schlank zu halten, und Dinge (Module) AUTOMATISCH zu laden, wenn sie gebraucht werden.
Es ist imho gar nicht mehr möglich, alles in den Kernel fest einzukompilieren, weil der Kerneld ann zu groß zum booten wird.
Das "automatische Laden" von Modulen ist wiederum ein spezielles Kernel-Feature, was einkompiliert werden muss. Beim Start selber kann der Kernel gar keine Module laden - deshalb wurde das Konzept der init ramdisk erfunden.
Nach dem Booten kann der Kernel unter ganz bestimmten Umständen bestimmte Module automatisch laden - allerdings ist dieser Mechanismus schon "überholt" und wird auf kurz oder lang aus dem Kernel verschwinden, weil er durch den hotplug-Mechanismus ersetzt werden wird.
das war der Knackpunkt. Genau das wollte ich wissen. Alles was in der ./etc/modules steht wird während des Bootvorganges geladen. Ob die Abhängigkeiten erfüllt sind oder nicht spielt keine Rolle. Eben zwangsweise wie du sagst..../etc/modules laedt module zwangsweise
Die Module die vom Kernel geladen werden, werden vorher auf ihre Abhängigkeiten gecheckt.
Ich glaube das Rad ist nun runder und nicht mehr kantig
Danke Dirk
Nein das Rad ist noch immer kantig. In beiden Fällen werden natürlich Abhängigkeiten gecheckt.Pix hat geschrieben:Alles was in der ./etc/modules steht wird während des Bootvorganges geladen. Ob die Abhängigkeiten erfüllt sind oder nicht spielt keine Rolle.
Die Module die vom Kernel geladen werden, werden vorher auf ihre Abhängigkeiten gecheckt.
Module deren Abhängigkeiten nicht erfüllt sind, werden (normalerweise) auch in beiden Fällen nicht geladen.
Das Rad bleibt kantig. Ich gebe es auf einen Sachverhalt zu verstehen, für den mein Horizont wahrscheinlich zu kurz ist.
Ich möchte mich bei allen bedanken die an diesem Thread mitgewirkt haben, und mir mit ihren Wissen zur Seite standen.
Einige Dinge habe ich verstanden :
- wozu die /etc/modules.conf da ist
- das die Module in der /etc/modules zwangsweise beim Systemstart geladen werden
und andere Dinge habe ich nicht verstanden.
Module sind doch nichts anderes als Treiber für Programme bzw. Hardware.
Und die /etc/modules kann man doch in etwa mit der autoexec.bat bzw. config.sys von Windows vergleichen, nach meinem Verständnis jedenfalls.. (Ich liege wahrscheinlich 100% falsch)
Patrick hat geschrieben:
Das bekomme ich nicht hin.
Ich habe mich oben bereits bedankt und tue es nochmal.
Dennoch gebe ich die Thematik auf sie vollkommen zu verstehen.
Dirk
Ich möchte mich bei allen bedanken die an diesem Thread mitgewirkt haben, und mir mit ihren Wissen zur Seite standen.
Einige Dinge habe ich verstanden :
- wozu die /etc/modules.conf da ist
- das die Module in der /etc/modules zwangsweise beim Systemstart geladen werden
und andere Dinge habe ich nicht verstanden.
Module sind doch nichts anderes als Treiber für Programme bzw. Hardware.
Und die /etc/modules kann man doch in etwa mit der autoexec.bat bzw. config.sys von Windows vergleichen, nach meinem Verständnis jedenfalls.. (Ich liege wahrscheinlich 100% falsch)
Patrick hat geschrieben:
Auch wenn ich alles in der /etc/modules auskommentiere, werden Module (z.b. für die Unterstützung des Dateisystem vfat ) beim Systemstart geladen. Ein 'lsmod' zeigt mir über USB bis Alsa jede Menge Module die während des Systemstarts geleaden werden, auch ohne das sie in der /.../modules drinstehen.In der kernel Config legst Du nur fest, welche komponenten ueberhaupt als Modul verfuegbar sind, in /etc/modules legst Du fest, welche davon beim Booten automatisch geladen werden sollen....
Das bekomme ich nicht hin.
Ich habe mich oben bereits bedankt und tue es nochmal.
Dennoch gebe ich die Thematik auf sie vollkommen zu verstehen.
Dirk
Nein. Module sind Teile vom Kernel-Code die aus der Datei vmlinuz ausgelagert wurden. Das *können* Treiber sein, aber auch jedes beliebige andere Programmteil (z.B. Routinen zur Berechnung von Prüfsummen o.ä.)Pix hat geschrieben: Module sind doch nichts anderes als Treiber für Programme bzw. Hardware.
Wieder falsch Die autoexec.bat ist mit der .bashrc in deinem Homeverzeichnis vergleichbar - oder vielleicht mit den Skripten in /etc/init.d. Die config.sys ist auch eher ein Mischmasch. Lediglich die device= Zeilen könnte man mit der /etc/modules vergleichen.Und die /etc/modules kann man doch in etwa mit der autoexec.bat bzw. config.sys von Windows vergleichen, nach meinem Verständnis jedenfalls.. (Ich liege wahrscheinlich 100% falsch)
Es gibt z.B. discover und hotplug - wenn du die installiert hast (und das hast du mit Sicherheit, denn ALSA wird 100% nicht automatisch geladen) wird das System nach Hardware untersucht und die entsprechenden Module geladen. Aber nicht "automatisch" sondern ganz normal über modprobe - nur dass das ein Skript macht.Auch wenn ich alles in der /etc/modules auskommentiere, werden Module (z.b. für die Unterstützung des Dateisystem vfat ) beim Systemstart geladen. Ein 'lsmod' zeigt mir über USB bis Alsa jede Menge Module die während des Systemstarts geleaden werden, auch ohne das sie in der /.../modules drinstehen.
Ein weiteres "automatisches Laden" findet mit der initrd statt: Das ist letztlich nichts anderes als ein Komplettes Filesystem, wo neben den Modulen auch noch ein Skript enthalten ist, welches beim Start ausgeführt wird. Das Skript versucht nun, die zur Hardware passenden Treiber für das root-Filesystem zu laden, u.a. die IDE-Treiber. Die Filesystem-Treiber werden dabei durchprobiert...
Dann gibt es noch die /etc/fstab - da stehen die Filesystem drinn, die beim Booten geladen werden. Hierfür wird auch versucht,die passenden Module nachzuladen, was dein vfat erklären würde.