Hallo, Am Wed, 02 Mar 2005, Frank Bertling schrieb:
Am Mittwoch, 2. März 2005 10:52 schrieb David Haller:
Du brauchst aber auch noch die aliase in der modules.conf, die muessten aber schon drin sein:
alias block-major-11 sr_mod alias char-major-21 sg
[...] hierzu habe ich mal eine kleine Verständnisfrage: Sehe ich es richtig, dass die Einträge in der modulesconf dafür sorgen, dass bei einem Zugriff auf das angegebene Device das entsprechende Modul geladen wird?
Korrekt. Genauer: Bei Zugriff auf ein device mit passender major (und ggfs. minor) Nummer sowie vom richtigen Typ (block, char) wird das per alias {block|char}-major-<majornr>[-<minornr>] modulname definierte Modul geladen. Das gilt auch bei Kernel 2.6. Das zweite alias oben bedeutet also z.B. (bei Kernel 2.4 und kleiner): greift ein Prozess auf ein char-device mit major 21 zu (z.B. /dev/sg0 => 21, 0 oder /dev/sg4 => 21, 4), dann ruft der Kernel das in /proc/sys/kernel/modprobe definierte binary auf und dies laedt dann (anhand der uebergebenen Major- und minor-Nummer) das Modul samt Optionen und Abhaengigkeiten. Bei Kernel > 2.5 laeuft das im Detail evtl. anders, mal abgesehen davon, dass die Abhaengigkeiten usw. in /etc/modprobe.conf stehen und dass die Syntax dieser Konfigurationsdatei stark abgespeckt wurde. -dnh -- "I also need a longer attention sp- Ooh! Feet!" -- Loz Pycock