Montage : les bases pour rendre accessible partitions et unités de stockage
Pour être utilisée (en lecture et écriture), une unité de stockage (partition de disque dur, clé USB, cartes, CD-ROM, unités distantes, etc …) doit être accessible au système d'exploitation, c'est-à-dire avoir un chemin d'accès dans l'arborescence du système.
La partition doit également être formatée avec un système de fichier (Ext4, NTFS, FAT32, exFat, …). Une partition non formatée n'est pas montable (techniquement c'est le système de fichier qui est monté, la partition n'est que son contenant).
L’action qui consiste à rendre une unité de stockage accessible s’appelle le montage. Elle est réalisée par la commande "mount". Le montage utilise un répertoire déjà existant et y crée un point de montage.
Le point de montage étant un répertoire, il dispose ( avant le montage ) d'un chemin d'accès dans l'arborescence du système (par exemple /media/fred). Une fois le montage effectué, ce chemin d'accès devient celui de l'unité de stockage.
Le contenu du répertoire "point de montage" ( si ce dossier n'était pas vide ) devient inaccessible ( masqué ) pendant la durée du montage, mais sans être altéré ( il redeviendra accessible à la fin du montage ). Pour éviter les problèmes d'accès au contenu du répertoire, il est fortement conseillé d'utiliser des répertoires vides comme point de montage.
Ainsi le répertoire /media/fred, ou /home/fred/montage, si on y monte une partition ( par exemple sda2 ) devient le chemin temporaire ( pendant la durée du montage ) vers cette partition sda2.
L'opération inverse, le démontage, libère le point de montage, ce qui rend inaccessible l'unité de stockage / partition et rend de nouveau accessible le contenu du répertoire que le montage avait masqué. Cette opération est effectuée par la commande "umount".
Une unité (ou volume, ou partition) non montée / démontée est visible par Ubuntu (au gestionnaire de fichier par exemple), mais Ubuntu ne peut accéder à son contenu (c'est à dire ni lire ni écrire dessus).
La plupart des unités de stockage sont montées automatiquement au démarrage ou au branchement (clé USB), mais ce n’est pas toujours le cas.
Le présent document a pour but de vous informer des bases (il existe de nombreuses options non abordées ici) concernant le montage / démontage des unités de stockage (ou volumes, ou partition).
Peu importe l'OS que vous utilisez, vous devez toujours démonter vos périphériques avant de les retirer / débrancher. Ceci évite de corrompre vos données et protège votre matériel.
Résumés des solutions pour monter un disque :
- Montage manuel
- Via un logiciel graphique (GParted : éditeur de partitions, Disques : l'utilitaire de disques)
- Via un terminal avec la ligne de commande mount
- Montage statique au démarrage via le fichier /ect/fstab
- Montage automatique avec AutoFS
- Montage automatique avec systemd automount (avec un service ou via /etc/fstab)
connaître vos partitions
Pour monter le système de fichier d'une partition en ligne de commande, il faut connaître l'identifiant de la partition, au format /dev/sda2 (ce n'est pas nécessaire pour un montage graphique), où :
- /dev/ désigne un périphérique (device),
- sd désigne un périphérique de type disque ou clé,
- a est l'ordre de démarrage du disque dans le BIOS (a est le 1er disque lancé, b le second, etc …).
- 2 est le N° de la partition sur le disque : ici la seconde.
- Donc /dev/sda2 = la seconde partition du 1er disque dur.
Graphiquement, on peut obtenir cette information via des logiciels comme Gparted ou Gnome-disk-utility.
Ci-dessous, la zone encadrée de rouge dans Gnome-disks donne les informations concernant la partition "GS" sélectionnée (reconnaissable à sa couleur bleue). La ligne surlignée en jaune est la zone importante pour le montage (/dev/sda2).
Au terminal, on peut aussi taper la commande :
sudo blkid
qui donnera (ici sur Ubuntu 19.04) quelque chose comme cela :
/dev/loop0: TYPE="squashfs" /dev/loop1: TYPE="squashfs" /dev/loop2: TYPE="squashfs" /dev/loop3: TYPE="squashfs" /dev/loop4: TYPE="squashfs" /dev/loop5: TYPE="squashfs" /dev/sda1: LABEL="principal" UUID="5e56449c-22d7-4819-86d6-78c8078a3580" TYPE="ext4" PARTUUID="6d0959ec-01" /dev/sda2: LABEL="GS" UUID="7a121975-abae-4ae4-a001-30181d207834" TYPE="ext4" PARTUUID="6d0959ec-02" /dev/sdb1: LABEL="Mint" UUID="d9c75347-4640-4d6b-9ff6-312dfa4c4719" TYPE="ext4" PARTUUID="0001c505-01" /dev/sdb2: LABEL="data" UUID="bdd52f68-10f8-4d3d-8175-aad1fc6cf82b" TYPE="ext4" PTTYPE="dos" PARTUUID="0001c505-02" /dev/sdb3: UUID="e343d413-46e1-4c44-824a-558b39c3e65f" TYPE="ext4" PARTUUID="0001c505-03" /dev/sdc1: LABEL="Sauvegardes" UUID="abbd0971-7729-4469-ba03-1558429aa04d" TYPE="ext4" PARTUUID="0003c319-01"
Si vous en avez, ne tenez pas compte de /dev/loopx, ce sont des pseudo-périphériques techniques (souvent utilisés par la technologie snap).
Ou limitez blkid aux périphériques dont le nom commence par sd via
sudo blkid /dev/sd*
De nouveau on trouve l'information recherchée (de type /dev/sda2), ici au début de chaque ligne.
quid des supports non disques, comme les nvme ?
Autre commande plus agréable à lire et sans nécessiter sudo :
lsblk -fe7,11 -o +size,model | cat
qui donnera sous 22.04 quelque chose comme
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS SIZE MODEL sda 111,8G Samsung SSD 840 EVO ├─sda1 ext4 1.0 Budgie-2004 25c341fb-320d-4a4a-9d64-b08c5fe55540 37,3G ├─sda2 1K └─sda5 ext4 1.0 Ubuntu-2204 46863706-2c24-432f-90e0-d5032a6a02e7 39,1G 42% / 74,5G sdb 238,5G INTENSO SSD ├─sdb1 vfat FAT32 ESP DFD6-C0FA 242M 4% /boot/efi 256M ├─sdb2 ext4 1.0 Boot e86f871b-a537-4071-9273-51588340e7c2 1G ├─sdb3 ext4 1.0 96647213-16b0-440a-adbb-6366485f2dcc 79,1G ├─sdb4 ext4 1.0 cd300a8d-5285-412a-9369-48c5470efa88 79,1G └─sdb5 ext4 1.0 0b1b1642-47aa-48ad-b50c-68833c31bb5a 79,1G sdc 1,8T Samsung SSD 870 QVO ├─sdc1 ext4 1.0 DATA-USERS 354cd297-50ac-4775-86ae-354ff9eb010c 769,2G 46% /media/DATA 1,6T └─sdc2 ext4 1.0 DATA-SYSTEM bd2fe6ff-ac64-4ec5-84d3-9bd057a6b3ba 206,6G 11% /mnt/DATA-SYSTEM 250G
Ici on a tout ce qu'il faut ( nom, type de syst. de fichiers, étiquette, uuid, etc ) pour préparer un montage,
sans les /dev/loop et autre tmpfs ( l'option e exclut : 7 pour les fs virtuels, 11 pour les périphériques « optiques » ).
Montage ponctuel d’une unité de stockage
Ce chapitre traite du montage ponctuel d'une partition (ou volume), montage valide seulement pour la session en cours. Une clé USB est considérée comme une partition.
Clé USB
Une clé se monte normalement tout seule lors de sa connexion au PC.
Pour démonter la clé avant de la retirer du PC (démonter protège la clé), allez dans votre gestionnaire de fichier ou votre poste de travail. Clic droit sur la clé puis démonter ou éjecter. Votre version d'Ubuntu fournit aussi normalement un utilitaire dédié.
Éteindre le PC donne le même résultat.
Partition montée graphiquement
Dans votre gestionnaire de fichiers, les partitions même démontées sont normalement visibles (en général en gris clair, ou sans symbole indiquant le montage).
Dans l'exemple ci-dessous (nautilus 3.32) les partitions sont accessibles en cliquant sur "+ Autres emplacements". On voit au symbole en fin de ligne que "Data" est montée, mais pas "Mint".
Dans le gestionnaire de fichiers :
- Cliquer sur une partition pour la monter.
- pour la démonter : clic droit puis démonter ou éjecter ; ou clic sur le symbole du montage. Votre version d'Ubuntu peut aussi fournir un utilitaire dédié.
Éteindre le PC donne le même résultat.
Pour des raisons de praticité, utilisez quand c'est possible le montage / démontage graphique. Néanmoins un montage en ligne de commande peut-être nécessaire, par exemple pour rendre une partition accessible au début d'un script.
Partition montée en ligne de commande
Monter ponctuellement une partition consiste à lier un volume (partition) à un répertoire existant, lequel devient ainsi le point de montage. Ce montage rend le volume (la partition) accessible à votre système. Il pourra ainsi y lire et y écrire, ce qu'il ne peut pas faire sans ce montage.
Potentiellement, n'importe quel répertoire (vide ou avec des fichiers) peut devenir un point de montage. En pratique on utilise des répertoires vides dans /media ou /mnt. N'utilisez pas un répertoire avec des fichiers car ils seront inaccessibles pendant le montage.
La commande classique pour faire un montage ponctuel est mount, mais il existe aussi la commande udisksctl mount -b, qui est un peu plus simple :
udisksctl
Pour monter la 2e partition du 1er disque dur (sda2) :
udisksctl mount -b /dev/sda2
Pour monter la partition nommé Sauvegardes :
udisksctl mount -b /dev/disk/by-label/Sauvegardes
Pour démonter
udisksctl unmount -b /dev/sda2 udisksctl unmount -b /dev/disk/by-label/Sauvegardes
Avantages de udisksctl mount -b sur mount :
- pas besoin de définir un répertoire de montage (le montage de la partition se fait automatiquement dans un répertoire / point de montage créé par udsksctl ⇒ /media/user/identifiant_partition).
- pas besoin de sudo ni de mot de passe.
Attention pour démonter il faut taper unmount(avec un n), alors que le démontage d'une commande mount, ci-dessous, s'écrit umount (sans n).
On peut également démonter graphiquement par le poste de travail ou le gestionnaire de fichier (les partitions montées avec udisksctl y sont toujours visibles) via un clic droit > démonter.
Éteindre le PC donne le même résultat.
mount
C'est la commande classique.
/media/$USER/
comme point de montage est un conseil « à risques ».Ce dossier
/media/$USER
n'existe pas par défaut, il n'est créé par le système que lors de la connexion d'un support amovible « hotpluggable ». Il appartient à root:root avec des permissions ACL autorisant le seul $USER à agir dans ce dossier.On trouvera dedans un dossier nommé
label_ou_uuid_du_périphérique_monté
qui existera tant que le périphérique est connecté. Ce dossier est effacé lorsqu'on démonte ou éjecte le périphérique.Il s'agirait de mieux expliquer les rôle et subtilité des dossiers
/media
et /media/$USER
voir exemples :https://forum.ubuntu-fr.org/viewtopic.php?pid=22583206#p22583206
https://forum.ubuntu-fr.org/viewtopic.php?pid=22592399#p22592399
https://forum.ubuntu-fr.org/viewtopic.php?pid=22599814#p22599814
Tout ce qui suit citant l'emplacement
/media/fred
est donc propice à ce genre de confusion ( le paragraphe Now the trick… ).Bref pour faire simple : on ne se sert pas manuellement des divers dossiers
/media/$USER
on les laisse tranquilles à l'attention du système pour les montages de supports nomades~amovibles via udisks / udisksctl et les permissions ACL automatisées aux bons endroits.
Il existe un point de montage dédié à ces montages ponctuels dans le répertoire /media, et il porte votre nom. Ainsi, si vous avez choisis comme nom utilisateur fred, il existe un répertoire /media/fred.
Il est intéressant d'utiliser ce répertoire (ou un répertoire dans votre compte utilisateur normal), car les montages qui ne sont pas faits dans votre compte /home/user ou dans /media/user ne sont pas visibles dans votre gestionnaire de fichiers (mais ils fonctionnent).
/media
est visible dans l'explorateur de fichiers ( norme freedesktop ).Dans « Autres Emplacements » pour Nautilus, dans « Périphériques » dans la plupart des autres explorateurs de fichiers.
Les montages placés ailleurs que dans
$HOME
ou /media
sont eux aussi visibles dans les explorateurs de fichiers :en parcourant tout le chemin jusqu'à leur point de montage, par ex. dans Nautilus :
« Autres emplacements » → « Ordinateur » →
/chemin/jusqu_au/point_de_montage
.
Mieux vaux donc utiliser /media/vous. C'est d'ailleurs ce que fait la commande udisksctl (voir plus haut).
Pour monter la 2e partition du 1er disque dur (sda2) de l'utilisateur fred (nécessite le mot de passe) :
sudo mount /dev/sda2 /media/fred
Pour démonter(nécessite le mot de passe) :
sudo umount /dev/sda2
ou
sudo umount /media/fred
En cas de problème de démontage, on peut forcer celui-ci via une option -f (à éviter si possible) :
sudo umount -f /media/fred
On peut également démonter graphiquement par le poste de travail ou le gestionnaire de fichier (quand la partition y est visible) via un clic droit > démonter.
Éteindre le PC donne le même résultat.
Vous pouvez très bien bien créer votre propre répertoire pour "point de montage" par un sudo mkdir /home/fred/montage (par exemple). C'est d'ailleurs nécessaire si vous envisagez plusieurs montages (vous créez alors /home/fred/montage1, /home/fred/montage2, etc …), mais pour un seul montage ponctuel et temporaire, /media/fred existe déjà et peut suffire.
La partition est montée et est donc désormais accessible en lecture et écriture aux commandes ou aux logiciels. Elle est également visible dans votre gestionnaire de fichiers si vous avez fait le montage dans /media/fred (adaptez /fred à votre /user).
Quelques options de la commande mount : Il existe de nombreuses options pour la commande mount, mais en voici quelques unes pouvant être utile dans une utilisations courante :
Label : Une partition peut recevoir un "label" (un nom), grâce à des logiciels comme gparted ou gnome-disks. Dans ce cas, on peut faire un montage par le label (grâce à l'option -L). Si /dev/sda2 a pour nom "Mint", on fera donc :
sudo mount -L Mint /media/fred
Par contre pas de démontage par le label, donc démontage classique :
sudo umount /media/fred
Lecture seule : pour éviter les erreurs, vous pouvez souhaitez que la partition ne soit accessible qu'en lecture, mais pas en écriture (donc sans modification / suppression des fichiers). C'est l'option -r (read) :
sudo mount -r -L Mint /votre-repertoire
ou
sudo mount -r /dev/sda2 /votre-repertoire
NTFS : Depuis ubuntu 22.04, le pilote ntfs3 est inclut nativement. Il est annoncé deux fois plus performant que l'ancien pilote. Il est mal appelé par udisksctl, il faut donc préférer la commande mount :
sudo mount -t ntfs3 /dev/sdXN /media/sdXN
L'option -t permet de préciser le système de fichier à monter (ici le NTFS). Ce n'est pas strictement indispensable (normalement mount reconnait le système de fichier monté), mais c'est une précaution utile.
Montage permanent d’une unité de stockage
Un montage permanent monte la partition (ou volume, ou unité de stockage) à chaque démarrage de la session. L'avantage est de ne paramétrer l'opération qu'une seule fois.
Graphiquement
Gnome-disk-utility étant installé par défaut sur Ubuntu, le plus simple est de l'utiliser.
Ouvrez Gnome-disks, puis :
- choisir le disque avec la partition à monter (à gauche) ;
- puis choisir la partition à monter en cliquant dessus (à droite de la fenêtre) ;
- puis cliquez sur le menu des partitions (3e bouton en dessous des partitions) puis cliquez sur "Modifier les options de montage" ;
- puis dans la fenêtre qui apparaît, décochez l'option "réglages par défaut de la session utilisateur".
Votre montage automatique est normalement actif (vérifiez juste que les options "Monter au démarrage" et "Afficher dans l'interface utilisateur" sont bien cochées, et à défaut, cochez-les).
Cliquez sur "valider", et tapez votre mot de passe.
Redémarrez la session puis votre gestionnaire de fichier pour vérifier que la partition choisie est bien montée.
Sur les versions avant disk 3.28 (donc avant Ubuntu 18.04), le nom de l'option à décocher était "Options de montage automatique"
Pour en savoir plus, voir le chapitre dédié de l'aide Gnome-disk.
En ligne de commande
Le fichier /etc/fstab est le fichier système où est sauvegardé le montage automatique réalisé via Gnome-disk. On peut directement modifier ce fichier à la main, sans passer par un logiciel.
Pour ouvrir fstab en mode administrateur (nécessite le mot de passe) :
gedit admin:///etc/fstab
Ne rien enlever ou modifier des lignes existantes. Ajouter à la fin du fichier ces 2 lignes :
#Montage de sda2 (le commentaire saisi ici est libre) <file system> <mount point> <type> <options> <dump> <pass> /dev/sda2 /media/data ext4 defaults 0 2
Ajustez en fonction de vos besoins :
- <file system> est la référence de la partition à monter. Vous pouvez remplacer l'identifiant /dev/sda2 par l'identifiant UUID=xxx, ce qui est plus sûr car l'ordre des disques et des partitions peut être changé dans le bios, ce qui rend alors le fstab inopérant. L'UUID, lui, ne change jamais. On trouve l'UUID par sudo blkid (présenté plus haut), ou par des programmes graphiques comme Gparted ou Gnome-disk.
- <mount point> est le point de montage. Vous pouvez remplacer /media/data par le point de montage qui vous convient. Par contre ce point de montage (ce répertoire) doit exister et être vide. Créez-le par sudo mkdir /media/data (ou un autre nom). Traditionnellement, on crée les points de montage dans /media/ ou /mnt/, mais c'est libre.
- <type> définit le type de système de fichier à monter. Dans l'exemple plus haut, ext4 est ce format de fichier. Si votre partition est en ntfs, saisissez ntfs. On peut utiliser auto et laisser l'ordinateur se débrouiller.
- <options> définit le type de montage. defaults est l'option de montage générique. Il en existe beaucoup d'autres, mais celle-ci devrait suffire. Pour un disque ntfs, choisissez plutôt rw,permissions.
- <dump> est à laisser à 0.
- <pass> sert à définir si l'utilitaire fsck doit faire une vérification de la partition montée (pour repérer des erreurs). 2 signifie qu'il le fait, mais de façon non prioritaire. 0 empêche la vérification, et est à utiliser pour des partition swap ou ntfs (windows).
Sauvegardez le fstab et redémarrez votre session (ou le PC) pour vérifier que la partition se monte désormais automatiquement.
Pour en savoir plus sur le fstab, consultez l'aide dédiée.
Monter une image disque
Il est possible de créer (par exemple avec Gnome-disk-utility) une image disque copiant et regroupant toutes les partitions d'un disque. Ce sont ce type d'images qui sont utilisées pour cloner des disques. On peut aussi les utiliser pour faire une sauvegarde intégrale d'un disque.
Si on ne souhaite pas la cloner, Gnome-disks peut monter (donc rendre accessible) graphiquement cette image (voir le chapitre dédié sur la documentation du logiciel).
En ligne de commande, la commande "mount" ne peut pas être utilisée pour monter l'image. Il est plus approprié d'utiliser la commande kpartx avec les options a et v :
sudo kpartx -a -v /chemin/de/mon/image/disque.img
Aller plus loin
- monter une partition automatiquement au demarrage avec Gnome-disk.