Différentes méthodes pour monter des périphériques amovibles sous Linux
But de ce document
Ce document me sert de mémo pour monter et démonter des périphériques amovibles (ex : clé usb) avec différentes méthodes sous Linux. J’ai testé ce mémo sous Debian Testing et Debian Sid et sous KDE.
Identifier le nom du périphérique à monter
La consultation des logs permet de connaître le nom actuel du périphérique lors de son insertion :
# tail -f /var/log/syslog
Aug 16 17:33:45 localhost kernel: sda: assuming drive cache: write through
Aug 16 17:33:45 localhost kernel: sda: sda1Nous voyons donc qu’il s’agit du périphérique « sda ».
Une autre méthode pour retrouver le nom d’un périphérique qu’on vient d’insérer est de regarder le contenu du dossier « /sys/block/ ». Lors de l’insertion du périphérique, un nouveau dossier correspondant au nom du périphérique sera créé (ex : sda).
Ce nouveau périphérique (ex : sda) sera créé également dans « /dev ».
Remarque : Une fois le périphérique identifié, il est possible de connaître ses différentes partitions avec la commande « fdisk -l /dev/sda » ou la commande « cat /proc/partitions »
Montage manuel du périphérique en ligne de commande
Avant de monter un périphérique, il faut commencer par créer le répertoire devant accueillir la partition à monter. Exemple :
# mkdir /media/sda1
Voici un exemple de commande permettant de monter la partition « sda1 » du périphérique « /dev/sda1 » sur le dossier « /media/sda1 » :
# mount /dev/sda1 /media/sda1
Et voici la commande permettant de démonter ce périphérique :
# umount /dev/sda1
ou :
# umount /media/sda1
Remarque : Il faut obligatoirement être root pour effectuer les opérations précédentes
Autoriser un simple utilisateur à monter et démonter des périphériques
Pour autoriser un simple utilisateur à monter et démonter des périphériques, il faut ajouter la ligne suivante dans le fichier « /etc/fstab » :
/dev/sda1 /media/sda1 vfat rw,auto,user 0 0
Remarque : L’option « user » autorise les utilisateurs à monter et démonter ce périphérique.
Une fois le fichier « /etc/fstab » correctement configuré, un simple utilisateur peut monter une partition avec la commande :
$ mount /dev/sda1
ou la commande :
$ mount /media/sda1
Et la démonter avec cette commande :
$ umount /dev/sda1
ou cette commande :
$ umount /media/sda1
Remarque sur le démontage d’une clé usb
Lorsque des données sont écrites sur une clé USB, celles-ci ne sont pas immédiatement écrites mais simplement stockées dans une zone mémoire.
L’écriture réelle des données est effectuée seulement lors du démontage de la clé USB.
C’est pour cela qu’il est obligatoire de démonter proprement une clé USB avant de la retirer de son emplacement sinon les fichiers ne seront pas correctement enregistrés.
Cela permet d’augmenter la durée de vie des clés USB, car le nombre d’écritures est limité.
Ajouter un icône de périphérique dans KDE pour les monter et démonter facilement
L’ajout d’un icône de périphérique, permet de monter et démonter des périphériques sans saisir de ligne de commande.
Pour créer un icône de périphérique, il faut commencer par configurer « /etc/fstab » comme indiqué précédemment et ensuite effectuer les opérations suivantes :
Une fois l’icône créé, un clic droit sur celui-ci permettra de monter ou démonter la partition.
Montage de périphériques avec pmount
La commande « pmount » permet de simplifier le montage et le démontage de périphériques amovibles. Elle offre plusieurs avantages par rapport a la commande « mount » :
Si ce n’est pas déjà fait, il faut commencer par installer le paquet « pmount » qui est désormais installé en standard avec KDE sous Debian Testing et Sid.
La commande suivante permet de monter le périphérique :
$ pmount /dev/NomDuPeripherique
ou même plus simplement :
$ pmount NomDuPeripherique
La commande suivante permet de démonter le périphérique :
$ pumount NomDuPeripherique
Montage automatique des périphériques avec udev sous kde 3.4 ou supérieur
Grâce à udev et pmount et depuis la version 3.4 de kde, lors de la connexion d’un nouveau périphérique, plusieurs opérations sont effectuées automatiquement :
Remarque : Le nom de l’icône qui apparaît sur le bureau est déterminé automatiquement par KDE et à priori, il n’est pas possible de le changer (en tout cas, je n’ai pas trouvé).
Configurer udev pour renommer ses périphériques
udev s’occupe entre autre de la gestion et la création des noms des périphériques dans « /dev ». Il permet en particulier de renommer ses périphériques usb automatiquement en fonction des caractéristiques et des identifiants de ceux-ci. Par exemple une clé usb sera nommée /dev/cle_usb un appareil photo /dev/apareil_photo et non pas simplement /dev/sda1. Mais pour cela, il faut configurer udev comme indiqué ci-dessous.
Obtenir des informations sur votre périphérique pour l’identifier de manière unique
Une fois le nom du périphérique identifié, la commande suivante permet d’obtenir de nombreuses informations sur celui-ci :
udevinfo -a -p /sys/block/sda
Dans les nombreuses informations précédentes, il faut isoler une ligne identifiant de manière unique votre périphérique. Exemple :
SYSFS{serial}=="18113A4123115881"
Configurer udev
Une fois votre périphérique clairement identifié, il faut configurer udev, pour lui indiquer le nom que nous souhaitons désormais donner à ce périphérique. Pour cela, il faut éditer le fichier « /etc/udev/rules.d/udev.rules » et ajouter vers le début une ligne ressemblant à cela :
BUS=="usb", SYSFS{serial}=="18113A4123115881", NAME="cle_usb"
Après avoir déconnecté et reconnecté votre périphérique usb, celui-ci sera désormais renommé avec le nom indiqué ci-dessus soit « cle_usb »
Remarque : Pour que le montage manuel de vos périphériques continue à fonctionner correctement, il faudra encore modifier votre fichier « /etc/fstab » pour lui indiquer les nouveaux noms de vos périphériques.
Points à vérifier si cela ne fonctionne pas correctement
Gérer les droits sur vos périphériques avec udev
En plus de nommer vos périphériques, udev permet d’autres choses et en particulier la gestion des droits. En reprenant l’exemple précédent, il est possible d’affecter un groupe avec le paramètre « GROUP= » et un masque avec le paramètre « MODE= » à notre clé USB. Exemple :
BUS=="usb", SYSFS{serial}=="18113A4123115881", NAME="cle_usb", GROUP="tony", MODE="0770"
Voici le résultat :
# ls -la /dev/cle_usb
brwxrwx--- 1 root tony 8, 97 2007-04-07 10:08 /dev/cle_usbGérer les droits des périphériques montés sous KDE
Sous KDE quand une clé USB est insérée, celle-ci est montée automatiquement dans « /media » sans que celle-ci soit déclarée dans « /etc/fstab » grâce à pmount.
Si vous souhaitez maîtriser le point le montage ou la gestion des droits sur ce périphérique, vous pouvez créer une entrée dans « /etc/fstab » pour cela. Dans cet exemple, le point de montage est indiqué dans « /mnt », et grâce à « umask » et « gid », il n’y aura que les utilisateurs appartenant à « mongroup » qui auront accès à ce périphérique :
/dev/cle_usb /mnt/cle_usb vfat rw,user,noauto,umask=0007,gid=mongroup 0 0
Il ne faut pas oublier de créer manuellement le dossier qui va contenir le point de montage :
# mkdir mnt/cle_usb
Autres sources d’informations
La documentation de référence de udev :
Historique des modifications
| Version | Date | Commentaire |
|---|---|---|
| 0.1 | 20/08/06 | Création par Tony GALMICHE |
| 0.2 | 07/04/07 | Ajout « Gérer les droits sur vos périphériques avec udev » et « Gérer les droits des périphériques montés sous KDE » |

Commentaires
> Différentes méthodes pour monter des périphériques amovibles s
Intéressant.
Juste pour dire que je fais plus facilement "cat /proc/partitions" que "fdisk -l".
Et que je fais plus facilement dmesg que tail -f /var/log/messages.