modulname.o: Abhängigkeit_1 Abhängigkeit_2 ...
Hier ein Beispiel für das ext3-Dateisystem aus der modules.dep
ole@enterprise:/lib/modules/2.4.10-4GB> grep ext3 modules.dep /lib/modules/2.4.10-4GB/kernel/fs/ext3/ext3.o: /lib/modules/2.4.10-4GB/kernel/fs/jbd/jbd.o
Alle für das System zur Verfügung stehenden Module sind hier aufgelistet mit den Modulen, auf denen sie basieren. Sollte das Modul keine anderen Module benötigen, wird es trotzdem in der Datei aufgeführt. Wenn jetzt mit modprobe ein Modul geladen werden soll, so konsultiert das Programm erst diese Datei und lädt die benötigten Module zuerst. Erst wenn alle benötigten Module eingebunden worden sind, dann wird auch das eigentlich angeforderte Modul geladen.
Die Datei modules.dep muß immer auf dem neuesten Stand sein. Sollte sich in den Abhängigkeiten etwas geändert haben ohne daß diese Änderung hier erfaßt wurde, dann kann modprobe eventuell Module nicht erfolgreich in den Kernel einbinden. Aus diesem Grund wird in den meisten Distributionen diese Datei bei jedem Start des Systems mittels des Befehls depmod neu erstellt. Bei SuSE 7.3 erfolgt dies in der Datei /etc/rc.d/boot wie im folgenden Ausschnitt zu sehen ist.
# # initialize database for kerneld. This should be done earlier, but # could cause a lot of trouble with damaged file systems. # restart of kerneld will be done by /etc/init.d/kerneld # MODULES_DIR=/lib/modules/`uname -r` if test -x /sbin/depmod -a -d $MODULES_DIR ; then for i in $MODULES_DIR/* $MODULES_DIR/*/* /etc/modules.conf ; do test -e $i || continue if test $i -nt $MODULES_DIR/modules.dep ; then rm -f $MODULES_DIR/modules.dep break fi done if test ! -e $MODULES_DIR/modules.dep ; then echo -n Setting up $MODULES_DIR /sbin/depmod -a > /dev/null 2>&1 rc_status -v -r fi fi