Point de montage
En informatique, un point de montage est un répertoire à partir duquel sont accessibles les données se trouvant sous forme d'un système de fichiers sur une partition de disque dur ou un périphérique. Plus simplement, c'est le dossier qui permet d'accéder au contenu d'un disque dur, clé USB, lecteur DVD, ou autre périphérique de stockage.
Une notion Unix
La notion de point de montage apparaît surtout dans les systèmes Unix : en effet, dans un système Windows, les périphériques de stockage de données et les partitions sont affichés comme des lecteurs indépendants en haut de leur propre arborescence. Sous Unix, en revanche, ils sont inclus dans l'arborescence, car Unix traite aussi les partitions et périphériques de stockage comme des fichiers.
- Si l'on considère par exemple un système comprenant :
- une partition de disque dur où est installé le système (Windows ou Unix) ;
- une partition de disque dur où se trouvent les données des utilisateurs ;
- un lecteur de disquette.
- Sous Windows, on accédera alors à ces données de manière séparée :
- C: : partition système du disque dur ;
- D: : partition utilisateur du disque dur ;
- A: : disquette (accès-type : A:\chemin\fichier).
- Sous Unix, l'accès se fera à partir de la racine / :
- / : première partition système du disque dur ;
- /home : partition utilisateur du disque dur ;
- /mnt/floppy : disquette (accès-type : /mnt/floppy/chemin/fichier).
Plusieurs opérations y sont possibles, comme pour tout système de fichiers. Mais deux sont impératives : le montage (pour pouvoir l'utiliser) et le démontage. Le démontage ne peut s'effectuer qu'après que toutes les opérations en cours avec la partition concernée sont terminées. Ceci est valable aussi bien pour Unix que pour Windows.
- Exemple sous Windows : On branche une clé USB, on écrit un gros fichier dessus, le temps d'écriture sera non négligeable et si on clique sur l'icône pour la déconnecter, on obtiendra un message d'erreur indiquant que l'opération n'est pas possible pour le moment et qu'il faudra la renouveler ultérieurement.
Si l'on coupe (physiquement) l'accès au périphérique alors que l'on n'a pas démonté, on aura :
- une incohérence système lorsque l'on accédera de nouveau à ce système de fichiers (exemple : on éjecte physiquement un cédérom et on en injecte un autre différent, sans en informer le système),
- un très gros risque de corruption du système de fichiers associé (sauf s'il est journalisé), voire risque de destruction physique partielle du média dans le cas d'une mémoire flash[1].
Évidemment, si l'on arrête proprement le système d'exploitation, celui-ci prendra soin de démonter correctement tout ce qui est monté.
Montage et démontage sous Unix
Lorsque les données sont accessibles à partir d'un point de montage, on dit que la partition ou le périphérique sont montés. Dans les systèmes Unix, le point de montage par défaut est /mnt ou /media (ou /Volumes dans le cas de Mac OS X). Par exemple, une disquette sera généralement montée en /mnt/fd0 et un cédérom en /mnt/cdrom ou /media/cdrom. Le point de montage par défaut des périphériques est spécifié dans un fichier de configuration système (/etc/fstab sous Linux et /etc/vfstab sous Solaris).
La commande Unix permettant de monter des répertoires est mount. La commande inverse, qui démonte, est umount (et non unmount).
Montage
La commande mount permet de relier une partition ou un périphérique à un répertoire, répertoire par lequel les données présentes sur la partition ou le périphérique sont accessibles.
Pour monter un périphérique ou une partition avec la commande mount, il faut indiquer :
- le type du système de fichiers par l'option -t
- le fichier spécial représentant le périphérique ou la partition (généralement /dev/*) ;
- le répertoire de montage.
Par exemple, la commande ci-dessous permet de lire un cédérom en montant le périphérique /dev/cdrom (cédérom) sur /media/cdrom en indiquant que le système de fichiers est ISO 9660
mount -t iso9660 /dev/cdrom /media/cdrom
Certaines indications peuvent être omises lorsqu'elles sont spécifiées dans le fichier de configuration listant les points de montage par défaut (/etc/fstab sous Linux, /etc/vfstab sous Solaris...). On peut omettre le type de système de fichiers si la version de mount utilisée est assez « intelligente ». Par contre, même en l'indiquant, on ne pourra jamais monter un système de fichiers que le noyau Unix ne sait pas gérer (parce qu'il n'a pas été configuré pour l'utiliser par exemple).
Lorsque le montage a réussi, une mise à jour est effectuée dans un fichier système recensant les montages en cours (fichier /etc/mtab sous Linux, /etc/mnttab sous Solaris). L'option -n de mount permet d'éviter cette mise à jour dans des cas bien particuliers où le montage échouerait pour cette raison (si l'on travaille sur un système de fichiers chrooté en lecture seule par exemple).
On peut également sous les Unix modernes monter des fichiers qui constituent un système de fichiers à eux-seuls (loopback), grâce à l'option -loop (sous Linux, pour Solaris il n'y a pas d'option particulière, mais il faut passer auparavant par la commande lofiadm). Ceci est particulièrement utile dans le cas d'images représentant des disquettes, cédérom, DVD. Les commandes dd et mkisofs peuvent aider à fabriquer de tels fichiers.
Il est possible, sous certaines configurations, de monter (recouvrement total ou partiel) par-dessus d'autres systèmes déjà montés.
De même, en utilisant le système NFS (type de système de fichiers transitant par le réseau), il peut être possible de voir un système de fichiers monté par NFS sur le système que l'on monte par NFS (ré-export), mais c'est plutôt rare.
DĂ©montage
Pour démonter une partition ou un périphérique, il faut utiliser la commande umount. Par exemple :
umount /media/cdrom
Le démontage ne marche que si la partition n'est pas utilisée, à savoir :
- aucun fichier n'est en train d'ĂŞtre lu ou Ă©crit sur la partition ;
- aucun processus n'a son répertoire de travail sur la partition.
Si le démontage est refusé, on peut utiliser la commande fuser pour savoir quels processus l'utilisent. Par exemple (si le démontage de /media/cdrom est refusé) :
fuser /media/cdrom
Lorsque le démontage a eu lieu, le fichier /etc/mtab (Linux) ou /etc/mnttab (Solaris) est mis à jour.
Points de montage standards sous Unix
Le disque dur est généralement divisé en plusieurs partitions qui sont montées au démarrage de l'ordinateur. Un exemple typique :
- / (partition racine) : contient les éléments fondamentaux du système ;
- /usr : contient le reste du système ;
- /home : contient les répertoires des utilisateurs (dits home directories) ;
- /tmp : contient les fichiers et répertoires temporaires (intermédiaires de calcul, par exemple).