======= Udev =======
>**Sujet** : Installer et configurer ''udev''
>**Niveau** : Difficile
>**Auteur** : [[utilisateurs:Swebian]]
===== Introduction =====
**Avertissement!!** \\ En l'état actuel d'avancement de la branche du noyau 2.6.x, cette installation n'est plus nécessaire désormais. Par ailleurs la plupart des distributions majeures l'intègrent par défaut.
Udev est certainement le plus gros changement dans la version 2.6.x du noyau (kernel). C’est la nouvelle méthode de gestion des fichiers de périphériques. Cette branche 2.6 donne l’impression d’amorcer la transition entre l’ancien système de fichier ''/dev'' et le nouveau système de fichier ''/sys''.
===== Prérequis =====
Tout d'abord, contrôlez que vous tournez sur un noyau 2.6 ou plus récent :
$ uname -r
Ensuite, contrôlez que vous ayez la version 2.7 d' ''initscripts'' (ou une plus récente) :
$ fdfd
Nous avons besoin de ces différents outils aussi : ''sysfsutils'', ''libsysfs1'', ''hotplug''.
J'ai aussi installé ''libsysfs-dev'' dans le cas ou vous souhaitez créer un fichier ''sysfs''.
===== Installation =====
**Avertissement!!** \\ A partir de maintenant, gardez une trace de vos manipulations au cas ou vous souhaiteriez revenir en arrière.
Il faut commencer par éditer deux fichiers :
* Editez votre fichier ''/boot/grub/menu.lst'' pour ajouter ''devfs=nomount'' à la fin de la ligne ''kernel''. Par exemple :kernel (hd0,0)/vmlinuz root=/dev/hda1 ro devfs=nomount
* Editez la ligne ''/etc/fstab sysfs'' pour qu'elle ressemble à ça :none /sys sysfs defaults 0 0
Installez ensuite le package ''udev'' :
# apt-get install udev
Si vous jetez un oeil dans votre répertoire ''/sys'' vous y verrez des entrées comme ''block/'' et ''bus/''. Il y a seulement des entrées pour les périphériques connectés. Par contre si vous regardez dans le répertoire ''/dev'', il n'y aura plus cent millions de fichiers à l'intérieur! Votre ancien répertoire ''/dev'' à été renommé en ''./dev''. Vous pouvez vous trouvez avec des périphériques qui ne fonctionnent plus comme par exemple la souris ou les périphériques audio.
===== Configuration =====
Les paramètres, règles, permissions des périphériques et les liens symboliques se trouvent dans ''/etc/udev/''.
Par exemple, si le son ne fonctionne plus pour un utilisateur, vous aurez peut-être à éditer ''/etc/udev/permissions.d/udev.permissions'' pour changer les entrées comme ceci: ''dsp*:root:root:0660 en: dsp*:root:users:0660''.
* Voici un bon [[http://www.reactivated.net/udevrules.php#basics|document]] expliquant les __règles__ dans Udev.
Le comportement de Udev pour un périphérique est contrôlé par la première règle qui correspond au périphérique listé dans les règles. Vous avez le choix d’éditer une règle existante ou un fichier de permissions ou encore d'en créer vous-mêmes. Si vous créez vos propres fichiers utilisant un préfixe comme ''00-'' (zéros) dans votre nom de fichier, cela fera interpréter vos règles en premier. Le nom de fichier doit avoir soit ''.rules'' ou les permissions comme extension de nom de fichier.
Il existe deux nouveaux outils pour obtenir des informations au sujets de vos périphériques: ''systool'', ''udevinfo''.
Dès que vous avez modifié vos règles, mettez à jour les paramètres en redémarrant Udev :
# /etc/init.d/udev start
Si vous avez modifié votre fichier ''/etc/fstab'' pour pointer vers les nouveaux liens symboliques que vous venez de créer, mettez à jour en lançant:
# mount -a
Tous mes périphériques USB/firewire fonctionnent. \\ Les périphériques USB sont bien plus simple à régler et à trier.
===== Désinstallation =====
Pour revenir à ''devfs'', éditez votre ''/boot/grub/menu.lst'' pour effacer les changements que vous avez fait et supprimez le paquet ''udev''
# apt-get remove udev
Ensuite redémarrez.
===== Liens =====
* http://www.tldp.org/HOWTO/Flash-Memory-HOWTO/linux-2.6.html
* http://linux.dell.com/projects.shtml#devlabel
* http://users.actrix.co.nz/michael/usbmount.html
* http://www.xs4all.nl/~bsamwel/usb_storage_on_debian.html