Montage et Démontage de périphériques
17 Sep. 2006
- Auteur : Hyacinthe MENIET
- Responsable : TrustRobot
- Score ( voter ) :



- Connexes : Même auteur | Même responsable | Historique
1. Nommage des périphériques sous linux :
Linux utilise un système de nommage des périphériques très différent de ce que l'on peut trouver sous MS Windows ®. Sous Windows ®, chaque partition et lecteur est associé à une lettre A:,C: ... Z: et quand il y'en a plus de 26 ? Sous linux on met des numéros, C: correspond généralement à /dev/hda1 et par extension on peut supposer que Z: sera /dev/hda26 et s'il y'en 27 ? se sera /dev/hda27. Tous les périphériques sont localisés dans le répertoire /dev/, plus tard lorsque je dirai hda1, je ferai évidement référence à /dev/hda1 :- hda1 : designe la première partition primaire du disque maître sur l'IDE 0
- hdd : designe le disque esclave sur l'IDE 1
- hdc5 : designe la première partition logique du disque maître sur l'IDE 1
- sda : designe le premier disque dur scsi
- sdb2 : designe la deuxième partition du deuxième disque dur scsi
- sdd6 : designe la deuxième partition logique du quatrième disque dur scsi
- scd0 ou sr0 : designe le premier lecteur de CDROM/DVDROM SCSI
- fd0 : designe le premier lecteur de disquette
2. La commande mount
Par soucis de cohérence, il est préférable de monter toutes vos partitions (et CDROM, disquettes ...) externes au système dans le répertoire /mnt qui est prévu pour cela. Comme vous avez potentiellement plusieurs périphériques à monter, il est préférable de créer un répertoire pour chacun (avec un nom explicite) dans /mnt/. Quelques exemples :
/mnt/floppy : sert généralement pour la disquette
/mnt/cdrom : sert généralement pour le cdrom
Rien ne vous empêche de créer : /mnt/multimedia, /mnt/jeux, /mnt/win_C. Evitez, les accents et les espaces entre les mots. Pour créer /mnt/multimedia, par exemple, il faut être root et taper (dans un terminal) :
mkdir /mnt/multimedia
Voici en quoi consiste la syntaxe de mount, qui permet le montage de périphériques :
mount -t [système de fichiers] -o [options] [emplacement du périphérique] [dossier de montage]
- Les systèmes de fichiers courant : vfat : Partition FAT32/FAT16 ntfs : Partition NTFS(lecture seule). ext2 : Partition ext2 ext3 : Partition ext3 reiserfs : Partition reiserfs iso9660 : CDRom auto : s'utilise pour les disquettes et cdroms permet au système de determiner lui même le système de fichiers.
- Les options : ro : pour read only (lecture seule) rw : pour read write (accès total)
mount -t vfat /dev/hda1 /mnt/win98
Me permet de monter ma partition fat32 de Windows 98 ® (partition 1 du disque maître de l'IDE 0) dans le répertoire /mnt/win98. Notez que je n'ai pas utilisé de -o rw car par défaut, les partitions sont montées, en read write. Ceci implique que dans le cas d'une partition NTFS il faudra taper :
mount -t ntfs -o ro /dev/hda1 /mnt/winxp
Car le driver linux pour le NTFS n'est utilisable qu'en lecture seule.
3. umount :
C'est la commande inverse, qui sert à démonter un périphérique. Elle est indispensable, avant d'éjecter un périphérique vous devez d'abord le démonter. Pour un CDROM, vous y serez contraint car le bouton eject ne fonctionnera pas, pour une disquette si vous ne le faîtes pas, il y'a des chances que les données inscrites sur votre disquette soient incomplètes. Pour reprendre notre exemple plus haut, si je souhaite démonter Windows 98 ®, il me suffit de taper l'une ou l'autre de ces commandes :
umount /dev/hda1 ou umount /mnt/win98
4. Le fichier /etc/fstab :
Tout cela peut devenir très vite fastidieux, c'est pourquoi, il existe /etc/fstab. fstab est un fichier qui permet de définir les périphériques montables. Il est possible d'y définir de les monter automatique (à l'amorçage) ou quand vous le voulez. Voici un exemple de fstab :############################# SWAP ######################################### /dev/hda6 swap swap defaults 0 0 /dev/hdb5 swap swap defaults 0 0 ############################# LINUX ######################################### /dev/hdb4 / reiserfs defaults,notail 0 1 /dev/hdb2 /mnt/woody ext3 defaults 0 0 /dev/hda4 /mnt/gentoo ext3 defaults 0 0 /dev/hda9 /mnt/softs ext2 defaults 1 2 ############################# PERIPHS ###################################### /dev/fd0 /mnt/floppy auto defaults,user,noauto 0 0 /dev/hdc /mnt/cdrom auto defaults,ro,user,noauto 0 0 /dev/hdd /mnt/dvdrom auto defaults,ro,user,noauto 0 0 ############################# WINDOWS ####################################### /dev/hda1 /mnt/shared vfat user,auto,rw,exec,umask=0 0 0 /dev/hda5 /mnt/win98 vfat user,auto,rw,exec,umask=0 0 0 /dev/hda8 /mnt/multimedia vfat user,auto,rw,exec,umask=0 0 0 /dev/hda3 /mnt/win2k ntfs user,noauto,ro,exec,umask=0 0 0 ############################# OPT ########################################### none /dev/pts devpts gid=5,mode=620 0 0 none /proc proc defaults 0 0 none /proc/bus/usb usbdevfs defaults 0 0Chaque ligne suit la syntaxe suivante : [emplacement du périphérique] [dossier de montage] [système de fichiers] [options] [options annexes] Voyons à quoi correspondent les options :
- defaults : permet de monter le système de fichier avec les options standard : rw, suid, dev, exec, auto, nouser et async.
- notail : Est une option qu'il faut rajouter à toute partition / ou (/boot) au format reiserfs, cela permet à lilo d'amorcer le système d'exploitation qui s'y trouve. En principe les versions récentes de Lilo n'ont plus ce problème.
- user : Autorise les utilisateurs (autres que root) à monter la partition.
- nouser : Restreint le montage de la partition à root.
- auto : Autorise la partition à être montée à l'amorçage du système.
- noauto : Empêche la partition d'être montée à l'amorçage du système. Elle pourra l'être plus tard.
- ro : La partition sera montée en read only
- rw : La partition sera montée en read write
- exec : Autorise l'exécution de binaire
- noexec : Empêche l'exécution de binaire
- async : Les entrées/sorties seront gérées de manière asynchrone.
- noasync : Les entrées/sorties seront gérées de manière synchrone.
- suid : Autorise l'utilisation des uid,gig sur la partition.
- nosuid : Empêche l'utilisation des uid,gig sur la partition.
- dev : Autorise l'usage des fichiers spéciaux (contenu du repertoire /dev)
- nodev : Empêche l'usage des fichiers spéciaux (contenu du repertoire /dev)
- umask=valeur : permet de fixer les droits sur les fichiers qui ne sont pas gérés par le système de fichiers, nativement. Comme dans le cas des partitions windows. La valeur est donnée en octal. 0 (ou 000) correspond à un accès total pour tous (chmod 777), 222 correspond à un accès en lecture et exécution pour tous (chmod 555). Vous l'aurez compris le chmod correspondant = 777 - umask.
- gid=valeur : fixe le groupe auquel appartiendra la partition, s'utilise surtout pour /proc. Dans l'exemple ci-dessus, la partition /proc appartiendra au groupe de gid=5 (tty).
- uid=valeur : fixe l'utilisateur auquel appartiendra la partition
- Le premier chiffre correspond au nombre de jours entre deux traitements du fichier par la commande dump. Ne fonctionne qu'avec l'ext2.
- Ordre de tests des partitions (fsck). Si vous mettez 0, aucune vérification automatique n'est effectuée lors du démarrage. Les partitions situées sur un même disque seront testées d'une manière séquentielle mais si elles sont situées sur deux disques différents, c'est fait en parallèle. / doit toujours avoir le n°1.
mount /mnt/win98
Mount va lire fstab et monter win98 avec les options qui y sont spécifiées. Mais il est possible de faire tout ça sans passer par le terminal, depuis kde par exemple. Pour cela faîtes : clic-droit -> Nouveau -> lecteur de CDROM:

- Général : permet de fixer le nom du raccourci, choisissez des noms explicite comme, graveur, dvdrom ...
- Permissions : laissez par défaut
- Périphériques : Dans la liste déroulante, choisissez /dev/cdrom pour un cdrom et cochez si nécessaire lecture seule.
5. Cas particulier de la Mandriva : Supermount
Supermount, spécifique à la Mandriva, permet de monter et démonter les CD à la volée : vous pouvez appuyer sur la touche "eject" de votre lecteur, Mandriva ne vous insultera. Supermount va donc utiliser une syntaxe différente dans le fichier /etc/fstab :/mnt/cdrom /mnt/cdrom supermount dev=/dev/scd0,fs=iso9660,ro,--,iocharset=iso8859-15 0 0 /mnt/cdrom2 /mnt/cdrom2 supermount dev=/dev/hdd,fs=iso9660,ro,--,iocharset=iso8859-15 0 0 /mnt/floppy /mnt/floppy supermount \ dev=/dev/fd0,fs=vfat,--,iocharset=iso8859-15,umask=0,sync,codepage=850 0 0Je n'ai conservé que les périphériques amovibles, car le reste est identique à précédemment. Supermount, ne concerne que les périphériques amovibles qu'il monte virtuellement, vous pouvez donc utilisez vos périphériques avec autant d'insouciance que sous Windows ® Notez que la syntaxe a légèrement évoluée.