Forum Linux.debian/ubuntu Relation entre udev et hotplug

Posté par  .
Étiquettes :
0
15
fév.
2006
Bonjour,

J'ai une petite question à vous soumettre. J'ai fait pas mal de recherches mais jusqu'à présent, je n'ai pas trouvé de réponse. Voici ma compréhension des choses, corrigez moi si je me trompe.
udev est donc un successeur de devfs qui permet de créer la hiérarchie des devices présents dans le pseudo file system /dev.
udev utilise les évenements envoyés par le kernel et crée l'entrée ad-hoc dans /dev.
Il y a déjà quelque temps, lors du passage à udev, le package hotplug a été enlevé. J'avais lu par ailleurs que l'on trouvait dans /proc/sys/kernel/hotplug la commande qui était exécuté lorsqu'un nouveau device était connecté. Dans la plupart des distribs, on y trouve /sbin/hotplug. Chez moi, ce fichier est vide.
D'où ma question, comment est géré le hotplug sous ma debian ?
Ca fonctionne très bien mais j'aimerais comprendre comment.

Merci d'avance pour vos lumières.

PS: Je suis en Etch, kernel 2.6.15.4, udev 0.084-3
  • # Udev!

    Posté par  (site web personnel) . Évalué à 1.

    C'est maintenant udev qui se charge de gérer le hotplug sous Linux ;)
    • [^] # Re: Udev!

      Posté par  (site web personnel) . Évalué à 0.

      avec hal...
      Il faut penser à purger le paquet hotplug pour ne plus avoir de soucis!
      # apt-get remove --purge hotplug
    • [^] # Re: Udev!

      Posté par  . Évalué à 2.

      Oui merci.
      Cela, je l'avais bien compris.
      Pourrais-tu être plus explicite ?
      Par exemple, qu'est ce qui remplace /sbin/hotplug ? Est-ce udevsend ?
      De quelle manière udev interagit avec le kernel ?

      François
      • [^] # Re: Udev!

        Posté par  . Évalué à 1.

        udev a un tas de regle, pour le nomage, le modprobe de modules, ou autre (script externe) , tous et dans /etc/udev/ voir les rules

        udev utilise sysfs pour connaitre l'etat du noyau
    • [^] # Re: Udev!

      Posté par  . Évalué à 1.

      Après pas mal de recherche et l'aide de certaines personnes, je crois que je peux répondre à ma question :-)

      D'après mon /etc/init.d/udev, il utilise bien /sbin/udevsend


      set_hotplug_handler() {
      case "$(uname -r)" in
      2.6.1[0-4]|2.6.1[0-4][!0-9]*) HANDLER='/sbin/udevsend' ;;
      esac
      echo $HANDLER > /proc/sys/kernel/hotplug
      }


      ....pour les kernels entre 2.6.10 et 2.6.14
      Maintenant, que se passe-t-il pour les kernels 2.6.15 ?
      Et bien, udevsend n'est plus nécessaire.


      "Kernels >= 2.6.15 can directly read udev events via a netlink socket.
      So there is no need anymore to run udevsend for every event."


      Merci à Jérôme Warnier pour son aide ainsi qu'à moi-même !

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.