Fstab
| Fiche express | |
|---|---|
| Domaine | Montage des systèmes de fichiers au démarrage |
| Fichier | /etc/fstab
|
| Commandes liées | mount -a, findmnt, blkid
|
| Voir aussi | Systemctl (systemd génère des unités .mount à partir de ce fichier)
|
/etc/fstab (« file systems table ») décrit les systèmes de fichiers à monter automatiquement au démarrage : disques locaux, partitions, swap, et montages réseau (NFS, CIFS...). Le fichier est lu par le noyau/systemd très tôt au boot, et peut aussi être rejoué à chaud avec mount -a sans avoir besoin de redémarrer.
Format du fichier
Chaque ligne décrit un montage en six champs séparés par des espaces ou tabulations :
<périphérique> <point de montage> <type> <options> <dump> <pass>
- Périphérique : chemin du device (
/dev/sdaX), unUUID=..., unLABEL=..., ou une source réseau (serveur:/export) — préférer UUID/LABEL aux noms/dev/sdX, qui peuvent changer d'ordre entre deux boots. - Point de montage : répertoire où sera monté le système de fichiers (
swappour une partition d'échange). - Type : type de système de fichiers (
ext3,ext4,xfs,nfs,tmpfs,swap,autopour laisser le noyau détecter). - Options : liste séparée par des virgules, voir section suivante.
- Dump : utilisé par l'utilitaire
dumphistorique (0 = ignoré, 1 = sauvegardé) — en pratique presque toujours à 0 aujourd'hui. - Pass : ordre de vérification par
fsckau boot (0 = jamais vérifié, 1 = racine en premier, 2 = les autres systèmes de fichiers locaux ensuite) — mettre 0 pour le swap et les montages réseau, qui ne se vérifient pas avec fsck.
Options de montage courantes
- auto / noauto : monté automatiquement au boot ou seulement à la demande (
mount /point). - user / nouser : autorise (ou non) un utilisateur non-root à monter/démonter ce système de fichiers.
- exec / noexec : autorise (ou interdit) l'exécution de binaires présents sur la partition.
- ro / rw : montage en lecture seule ou lecture/écriture.
- sync / async : écriture immédiate sur le disque à chaque opération, ou différée (async est le comportement par défaut, plus performant).
- suid / nosuid : autorise (ou ignore) les bits setuid/setgid sur les binaires de la partition.
- dev / nodev : interprète (ou non) les fichiers spéciaux de périphériques présents sur la partition.
- defaults : raccourci pour
rw, suid, dev, exec, auto, nouser, async— le point de départ le plus courant, à combiner avec d'autres options si besoin. - nofail : ne bloque pas le boot si ce montage échoue (indispensable pour un montage réseau ou un disque amovible qui peut être absent).
- _netdev : indique que le périphérique nécessite le réseau (attend que l'interface soit up avant de tenter le montage) — à utiliser sur les montages NFS/CIFS/iSCSI, en général combiné avec
nofail.
Identifier un périphérique (UUID/LABEL)
Pour éviter de dépendre d'un nom /dev/sdX instable, on référence le périphérique par son UUID ou son label :
blkid # liste tous les périphériques avec leur UUID/LABEL/type
blkid /dev/sda1 # UUID/LABEL d'un périphérique précis
lsblk -f # vue arborescente équivalente, avec les points de montage actuels
Exemple de fichier
/dev/vg_root/lv_root / ext4 defaults 1 1
/dev/vg_root/lv_home /home ext4 defaults 1 2
/dev/vg_root/lv_log /var/log ext4 defaults 1 2
/dev/vg_root/lv_tmp /tmp ext4 defaults 1 2
UUID=xxxxxxxx-xxxx /boot ext4 defaults 1 2
/dev/vg_root/lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
# partage NFS
serveur:/export /mnt/export nfs rw,bg,hard,nointr,_netdev,nofail,vers=3,timeo=600,rsize=32768,wsize=32768 0 0
# bind mount (rendre un répertoire visible ailleurs dans l'arborescence)
/data/partage /var/www/partage none bind 0 0
Le bloc bg,hard,nointr,vers=3,timeo=600,rsize=32768,wsize=32768 est un jeu d'options NFSv3 classique : montage en arrière-plan si le serveur ne répond pas tout de suite (bg), retente indéfiniment plutôt que de remonter une erreur à l'application (hard), non interruptible par un signal (nointr), et des tailles de buffer de lecture/écriture confortables pour de meilleures performances.
Appliquer / vérifier sans redémarrer
mount -a # monte toutes les entrées non encore montées de /etc/fstab
mount -av # idem, en verbeux — utile pour repérer une ligne fautive
mount /point # monte une seule entrée déjà déclarée dans fstab
umount /point # démonte
mount -o remount,rw /point # remonte un système de fichiers déjà monté avec d'autres options (ex: passer de ro à rw)
findmnt # liste tous les montages actifs, sous forme d'arbre
findmnt /point # vérifie qu'un point précis est bien monté, et avec quelles options
findmnt --verify # valide la syntaxe de /etc/fstab sans monter quoi que ce soit
⚠️ Toujours tester une nouvelle ligne fstab avec mount -av ou findmnt --verify avant de redémarrer : une entrée invalide sans nofail sur un système de fichiers indispensable (typiquement / ou /var) peut bloquer le boot et forcer une intervention en mode de secours.
Voir aussi
- Systemctl — systemd traduit chaque ligne de
/etc/fstaben unité.mountgénérée à la volée (visible avecsystemctl list-units --type=mount)