(Courriels de diversion: <concernee@gommes-incommodons.com> <detronait@demontrent-demêloirs.com> <reeligibles@sous-traitions-quintupleront.com> <aboieraient@couvons-inciserai.com> <courbe@resonance-longeaient.com> <rattachez@parquions-incurverait.com> <obliques@kidnappeurs-classifier.com> <information@edulcorant-remontrer.com> <competitif@orangeraie-rapetissee.com> <synchronisees@nuancant-appauvrira.com> )


Bonjour,

Comme vous le savez peut être déjà, dès que l'on veut faire cohabiter
plusieurs versions de noyaux (2.2 et 2.0 ...) il se pose des tas de
problèmes pour reconnaître les modules automatiquement.

La solution proposée par redhat est assez bancale.

Voici donc ma solution pour la GNU-culte, entièrement compatible avec
une redhat pur jus, qui prend place dans /etc/rc.d/rc.sysinit

Il suffit de couper la partie déjà présente sur les modules et de mettre
celle ci à la place ; ainsi à la recompilation d'un noyau et des
modules, pour peu que l'on prenne la peine d'utiliser
/usr/src/linux-numéro-de-version, et de copier le zImage et System.map
dans /boot/zImage-numéro-de-version tout ira à la bonne place et des liens
seront refait au démarrage.

Très utile lorsque on a différentes versions de noyaux avec lilo ou des
disquettes de démarrage pour toujours avoir les bon modules, ou avec les
pilotes pcmcia qui sont très exigeants (System.map doit toujours être
celui du noyau en cours d'utilisation)

C'est pas beaucoup, juste un petit script bash tout con, mais ça dépanne
vachement.

***

# Copyright © 1999, Guylhem XXXX <guylhem \@/ oeil.qc.ca>, GPL

if ! grep -i nomodules /proc/cmdline >/dev/null && [ -f /proc/ksyms ];
then
    USEMODULES=y
else
    USEMODULES=
fi

# GNU-culte modules
rm -f /lib/modules/preferred /usr/src/linux

if [ -x /sbin/depmod -a -n "$USEMODULES" ]; then
        # Get ready for kmod if module support in the kernel
        mver=`uname -r`
        [ -n "$mver" -a -d "/lib/modules/$mver" ] && ln -sf /lib/modules/$mver /lib/modules/preferred
        [ -n "$mver" -a -d "/usr/src/linux-$mver" ] && ln -sf /usr/src/linux-$mver /usr/src/linux
        [ -n "$mver" -a -f "/boot/module-info-$mver" ] && ln -sf /boot/module-info-$mver /boot/module-info
        [ -n "$mver" -a -f "/boot/System.map-$mver" ] && ln -sf /boot/System.map-$mver /boot/System.map
        [ -n "$mver" -a -f "/boot/vmlinuz-$mver" ] && ln -sf /boot/vmlinuz-$mver /boot/vmlinuz
fi

if [ -x /sbin/depmod -a -n "$USEMODULES" ]; then
    # Get ready for kerneld if module support in the kernel
    if [ -e /lib/modules/preferred ]; then
        action "Finding module dependencies" depmod -a preferred
    else
        action "Finding module dependencies" depmod -a
    fi
    echo "done"
fi


-- 
Guylhem XXXX, Linux Documentation Project leader: http://metalab.unc.edu/LDP/
	       Clef PGP/PGP key:    http://oeil.qc.ca/~guylhem
               Chez moi/At home:    guylhem \@/ oeil.qc.ca
               Partout/Everywhere:  guylhem-pager \@/ oeil.qc.ca

 _______________________________________________________________________
  Le CULTe sur le ouebe: http://savage.iut-blagnac.fr/