Table des matières

/etc/fstab

Nota :

Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !

Définitions

Nom Description
Disque Disque dur physique.
Partition Zone physique délimitée sur un disque dur, qui peut être formatée, ou être un conteneur de partitions logiques.
Volume Interface logique utilisée par le système d'exploitation pour accéder aux données stockées sur un périphérique à l'aide d'un système de fichiers.
Un volume peut correspondre à un agrégat de partitions (voir LVM, RAID, volumes réseau, etc…).

Description

Le fichier /etc/fstab est une liste des systèmes de fichiers qui seront mountées automatiquement à l'initialisation du système sauf en cas d'utilisation de l'option noauto.
Il est possible d’éditer le fichier /etc/fstab pour ajouter vos propres volumes et partitions et choisir dans quel dossier leur contenu apparaîtra.

Si, au cours de l'initialisation du système, un des systèmes de fichiers listés dans le fichier /etc/fstab n'est pas accessible, le processus d'initialisation s'arrêtera pour demander l'intervention du super-utilisateur (root).

Dans les faits, /etc/fstab (File System Table) permet à la commande mount de mounter les systèmes de fichiers utilisés par votre système debian au cours de son initialisation.
La première partition à être montée est la racine (notée /) du système de fichiers qui sera utilisée comme cible par initramfs(Système de fichier en RAM) pour un chroot de son système de fichiers.

Contenu du fichier

Ce fichier contient en plus une partition ntfs à ajouter au cas d'un dualboot avec un windows dont on veut partager les fichiers.

Le fichier /etc/fstab est modifiable avec un éditeur comme nano par exemple en utilisant les droits superutilisateur :

nano /etc/fstab
# /etc/fstab: static file system information. 
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system>                           <mount point>         <type>  <options>          <dump>  <pass>
# /dev/sda5  racine du système de fichiers
UUID=a69d9182-f4c7-4276-b35d-7d5f9bd50a57 /                     ext4    errors=remount-ro  0       1
 
# /dev/sda6  racine des dossiers utilisateurs 
UUID=3df408e9-e65e-4659-9881-84ae6d077c43 /home                 ext4    defaults           0       2
 
# /dev/sda7  partition de données
UUID=d773855f-be34-4c1b-a34f-acdfe48f1640 /mnt/Images           ext4    defaults           0       2 
 
# /dev/sda8  swap         
UUID=a3e02ccd-54ed-4172-9830-23fea1ffe5ec swap                  swap    sw                 0       0
 
# /dev/sda2  accès partition windows 
UUID=BA00BF6300BF24F3  /mnt/windows  ntfs  rw,nodev,noexec,user,uid=1000,gid=1000,umask=007  0       0
Les lignes dont le premier caractère est un croisillon # sont ignorées par la commande mount.
On dit alors que ces lignes sont commentées.
Ligne windows

Six champs par ligne

Chaque ligne du fichier /etc/fstab est composée de six champs qui seront utilisés par la commande mount comme paramètres.

# <file system>                           <mount point>         <type>  <options>          <dump>  <pass>
UUID=d773855f-be34-4c1b-a34f-acdfe48f1640 /home/user/Images         ext4    defaults           0       2 

Pour que vous compreniez bien, et que vous puissiez l'adapter à vos besoins, chaque champ est détaillé ci dessous:

Les champs

Un fichier fstab est composé de plusieurs lignes décrivant chacune les conditions de montage de chaque système de fichier.
Chaque ligne est composée de six colonnes que l'on nomme champs.
Ces six champs sont, dans l'ordre:
<file system> <mount point> <type> <options> <dump> <pass>

<file system>

Ce champ permet d'indiquer le volume a mounter, pour les partitions on notera deux types de notation:

Nom de la partition dans Debian

Historiquement Debian, et linux en général, nomment dans le dossier /dev les disques avec des lettres:

Et nomment les partitions de chaque disque avec des chiffres:

# <file system>                           <mount point>         <type>  <options>          <dump>  <pass>
/dev/sdb1                                 /home/user/Images           ext4    defaults           0       2 

Identificateur Unique: UUID

Depuis quelques années, il est possible et vivement recommandé d'utiliser l'identifiant unique de partition UUID. Pour l'obtenir, il suffit de taper:

ls -l /dev/disk/by-uuid

Et on reporte l'UUID obtenue (dans cet exemple) :

# <file system>                           <mount point>         <type>  <options>          <dump>  <pass>
UUID=d773855f-be34-4c1b-a34f-acdfe48f1640 /home/user/Images           ext4    defaults           0       2 

Pour un volume réseau la notation est proche:

# <file system>                           <mount point>         <type>  <options>          <dump>  <pass>
192.168.1.11:/media/Serveur_Images        /home/user/Images           nfs       rw               0       0 

Voir aussi Les UUID des partitions

<mount point>

La deuxième colonne indique à mount le point de mountage qui sera utilisé pour accéder au système de fichiers de la partition. Par exemple : /home/user/Images/. Le point de montage est donc un répertoire qui devra être préalablement créé, comme par exemple, un sous répertoire dans le répertoire user:

 mkdir /home/user/Images

Et lui donner avec la commande chown les droits de l'utilisateur (user) courant.

 chown user:user /home/user/Images

<type>

La troisième colonne indique le type de système de fichiers utilisé par le volume (ext4, ext3 ou nfs par exemple). Pour plus de détail voir la page partition.

<options>

La quatrième colonne donne les options à utiliser pour le mountage. La liste ci-dessous n'est pas exhaustive,
pour connaître toutes les options possibles faire un :

man mount

Les options en gras sont les options par défaut.

Option Description
defaults Options par défaut ⇒ rw, suid, dev, exec, auto, nouser, async.
rw / ro Lecture et écriture autorisées / Lecture seule.
suid / nosuid Autorise les opérations sur les bits suid et sgid / N'autorise pas.
dev / nodev Interprète les noeuds de type caractères ou blocs / N'interprète pas.
exec /noexec Autorise l’exécution des fichiers binaires / N'autorise pas.
auto / noauto “mounté” automatiquement au démarrage et lors d'un appel mount -a / Ne pourra être monté qu'explicitement.
nouser / user Seul “root” sera autorisé à effectuer le mountage dé-mountage / Tous les utilisateurs aussi.
async / sync Accès en mode asynchrone / synchrone.
owner Seul le propriétaire sera autorisé à “mounter” “démounter”.
noatime Optimisation SSD (NO Access TIME): ne pas mettre à jour l'attribut “atime” et limiter le nombre d'accès disques.
discard Optimisation SSD : Active le mode TRIM : Gestion des effacements/libération par blocs.
sw Pour les partitions de type “swap”.
nofail Ne pas renvoyer les messages d'erreur de “mount”.
comment Utilisé par les programmes de maintenance de fstab.

<dump>

La cinquième colonne prend la valeur 1 pour les partitions visées par une sauvegarde au moyen de l'utilitaire dump ou 0 pour les autres.

<dump> - est utilisé par l'utilitaire dump pour décider quand faire des sauvegardes. Quand il est installé, dump vérifie le chiffre inscrit et décide si le système de fichiers doit être sauvegardé.
Les valeurs possibles sont 0 et 1 :

La plupart des utilisateurs n'auront pas dump d'installé, ils pourront donc inscrire 0 dans le champ <dump>.

<pass>

La sixième colonne concerne l'ordre de vérification des fichiers par l'outil fsck au démarrage de l'ordinateur (boot).
Elle prend la valeur :

<pass> est utilisé pour l'ordre de vérification au démarrage, laissez-y également les valeurs par défaut.

<pass> fsck lit le chiffre <pass> et détermine dans quel ordre les systèmes de fichiers vont être vérifiés.
Le champ peut prendre les valeurs 0,1 et 2.

  1. Le système de fichiers root devra avoir la priorité la plus haute : 1,
  2. tous les autres systèmes que vous voulez vérifier devront avoir un 2.
  3. Les systèmes de fichiers avec un <pass> à 0 ne seront pas vérifier par l'utilitaire fsck.
Certains systèmes de fichiers tels que proc
(interface permettant de lire ou changer des informations sur le paramétrage du noyau:processus,etc…)

, sysfs, tmpfs ou swap sont un peu particuliers, il est fortement recommandé de ne pas y toucher sans savoir ce que l'on fait.

Monter les volumes

Afin de tester vos modifications directement sans attendre le prochain redémarrage, vous pouvez demander à mount de le faire directement:

mount -a

Liens

1)
partitions
2)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !