Fstab/fr

Revision as of 06:31, 20 September 2023 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Other languages:
English • ‎Türkçe • ‎français • ‎русский

Utilisation de fstab

Le fichier de configuration appartenant à la racine /etc/fstab est utilisé pour définir comment les partitions de disque, divers autres périphériques de bloc, ou les systèmes de fichiers distants doivent être montés dans le système de fichiers.

Chaque système de fichiers est décrit dans une ligne séparée. Ces définitions seront converties en unités de montage systemd dynamiquement au démarrage, ou lorsque la configuration du gestionnaire de système est rechargée.

La commande mount --all montera tous les systèmes de fichiers mentionnés dans fstab, (sauf ceux dont la ligne contient le mot clé noauto). Les systèmes de fichiers sont montés en suivant leur ordre dans fstab. La commande mount compare les systèmes de fichiers source et cible pour détecter les systèmes de fichiers déjà montés. La table du noyau contenant les systèmes de fichiers déjà montés est mise en cache pendant mount --all. Cela signifie que toutes les entrées fstab dupliquées seront montées.

Fichier d'exemple

Chaque ligne du fichier décrit un système de fichiers, et contient des champs (spécifiés en colonnes) utilisés pour fournir des informations sur son point de montage, les options qui doivent être utilisées lors du montage, etc. Chaque champ peut être séparé les uns des autres par des espaces ou des tabulations :

# /etc/fstab : informations statiques sur le système de fichiers.
# <système de fichiers> <point de montage> <type> <options> <dump> <pass>.
LABEL=ESP   /boot/efi   vfat   umask=0077   0   2
/dev/sda5   /           ext4   defaults,noatime,discard   0   1
UUID=18360b04-a96d-4a99-8323-b07717f36a31   swap   swap defaults,noatime,discard   0   0
UUID=b4108631-e051-48d8-b2ff-a1d924a893f1   /home   ext4   defaults,noatime,discard   0   2
tmpfs   /tmp   tmpfs   defaults,noatime,mode=1777   0   0
UUID=634E43D367B0A4B1   /media/Data   ntfs-3g   noauto,x-systemd.automount,x-systemd.device-timeout=10,rw,inherit,permissions,streams_interface=windows,windows_names,compression,norecover,hide_dot_files,hide_hid_files,big_writes   0   2

Chaque colonne dans le tableau ci-dessus correspond aux "champs" de fstab et sera expliquée dans la section suivante.

Définitions des champs

Spécification du système de fichiers

Ce champ décrit un de chacun des éléments suivants :

  • le périphérique spécial de bloc
  • le système de fichiers distant
  • image du système de fichiers pour le périphérique loop à monter
  • le fichier d'échange (swap) ou la partition d'échange à activer

Ce champ prend généralement la forme de :

  • /dev/XdY
  • LABEL=<label>
  • UUID=<uuid>

pour identifier de manière unique un système de fichiers que vous souhaitez monter. Comme un UUID est nécessairement unique, vous constaterez qu'il s'agit de la valeur par défaut utilisée sur les systèmes plus modernes, alors qu'un nom de périphérique et un label ne sont utilisés que sur les systèmes plus anciens. Nous nous concentrerons donc sur les UUID dans ce tutoriel, mais sachez que si vous insistez pour utiliser ces commandes systèmes, elles fonctionnent toujours au moment de la rédaction de ce document.

Pour obtenir l'UUID de tous vos appareils, exécutez la commande blkid en tant que root :

sudo blkid

et vous obtiendrez quelque chose comme ceci:

/dev/sda1: LABEL_FATBOOT="ESP" LABEL="ESP" UUID="2462-755F" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="b86c0cae-3055-4d9e-9e12-1fa1e2cd32d2"

/dev/sda2: PARTLABEL="Microsoft reserved partition" PARTUUID="b0679b89-007c-441b-88a3-74a39f1f8b2b"
/dev/sda3: LABEL="WINSYS" BLOCK_SIZE="512" UUID="029873F49873E497" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="f8d444b9-ec60-4ac8-b12a-52448119fad1"
/dev/sda4: BLOCK_SIZE="512" UUID="0EB23063B2305207" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="cb083fb5-d61c-48e3-a657-ceb363a983b1"
/dev/sda5: UUID="9b539186-41e9-46f0-a515-1ec6c3544367" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="7bd52fb7-4d7d-412c-bc01-e3c98c7f3bb1"
/dev/sda6: UUID="b4108631-e051-48d8-b2ff-a1d924a893f0" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="9683d669-e0fd-496a-bd9c-f0e51d0bd561"
/dev/sda7: UUID="18360b04-a96d-4a99-8323-b07717f36a30" TYPE="swap" PARTUUID="7434de88-dd5c-4ce5-a6e2-4bb65c16eab5"
/dev/sdb2: UUID="26055107-28cd-457e-9a31-46781de4065d" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="86bdde2c-b92c-43fc-811a-6d0cdc312be1"
/dev/sdb3: UUID="c9dd0f4c-5793-446e-90bb-d10e27bf4922" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="d02838bd-371c-4673-96ed-8aad73bb6d91"
/dev/sdc1: LABEL="Win-Data" BLOCK_SIZE="512" UUID="634E43D367B0A4B1" TYPE="ntfs" PARTUUID="ca8d0663-6a6e-4b09-a0d7-05b59d109ab1"

N'importe laquelle des sorties de blkid peut être utilisée comme premier champ dans le fichier fstab.

Ce qui signifie que toutes les lignes suivantes sont des entrées valides pour la première ligne de la sortie de l'exemple ci-dessus :

# <système de fichiers>   <point de montage>   <type>   <options> <dump>   <pass>.
LABEL=ESP   /boot/efi   vfat   umask=0077   0   2
UUID=2462-755F   /boot/efi   vfat   umask=0077   0   2
LABEL=EFI\040system\040partition   /boot/efi   vfat   umask=0077   0   2
UUID=b86c0cae-3055-4d9e-9e12-1fa1e2cd32d2   /boot/efi   vfat umask=0077   0   2

I.E. Une seule des lignes ci-dessus doit être présente dans votre fichier fstab pour monter la partition ESP, mais n'importe laquelle d'entre elles fonctionnera ! Cependant, il est fortement recommandé d'utiliser l'UUID car il est globalement unique. Cela signifie que si vous déplacez un disque sur une autre machine, il conservera son UUID et il n'y a pas de possibilité de surprise comme l'ordinateur sur lequel vous avez déplacé le disque existant qui se met soudainement à :

  • démarrer à partir de la partition EFI System Partition sur le nouveau disque au lieu de sa propre ESP.
  • ne parvient pas à monter sa propre partition Windows parce que vous venez d'en ajouter une autre et qu'elle est prioritaire (ou non : cela dépend de la version exacte du noyau et du pilote du système de fichiers, ce qui entraîne un démarrage qui ne fonctionne que 50% du temps et d'autres problèmes étranges).
  • échec du montage d'un disque parce que le disque que vous venez d'insérer dans le slot M2 #1 est nommé /dev/sda et celui du slot #2 qui s'appelait /dev/sda devient soudainement /dev/sdb.
  • etc, etc.

Point de montage

Ce champ décrit le point de montage (cible) dans votre système de fichiers. Pour les partitions swap, ce champ doit être spécifié comme `none'. Si le nom du point de montage contient des espaces ou des tabulations, ceux-ci peuvent être respectivement échappés comme `\040' et '\011'.

Pour plus d'informations sur la norme de la hiérarchie du système de fichiers Linux, reportez-vous à la section #See Also, mais en résumé, vous devez spécifier un répertoire existant sur votre système de fichiers où vous souhaitez monter une partition.

Dans l'exemple de fichier fstab ci-dessus, la ligne suivante dans sa sortie blkid :

/dev/sdc1 : LABEL="Win-Data" BLOCK_SIZE="512" UUID="634E43D367B0A4B1" TYPE="ntfs" PARTUUID="ca8d0663-6a6e-4b09-a0d7-05b59d109ab1"
  • est le disque D: de Windows.
  • Le label NTFS est "Win-Data".
  • a un UUID Windows de "634E43D367B0A4B1" (différent des UUIDs Linux)
  • contient le système de fichiers NTFS
  • L'UUID de la partition est "ca8d0663-6a6e-4b09-a0d7-05b59d109ab1".

et est monté sur le /media/Data selon cette ligne :

UUID=634E43D367B0A4B1 /media/Data ntfs-3g noauto,x-systemd.automount,x-systemd.device-timeout=10,rw,inherit,permissions,streams_interface=windows,windows_names,compression,norecover,hide_dot_files,hide_hid_files,big_writes 0 2

Type de système de fichiers

Ce champ décrit le type de système de fichiers. Linux prend en charge de nombreux types de systèmes de fichiers : ext4, xfs, btrfs, f2fs, vfat, ntfs-3g (pour la compatibilité Windows), hfsplus (pour la compatibilité Mac), tmpfs, sysfs, proc, iso9660 (pour vous permettre de monter des fichiers ISO de CD/DVD en tant que répertoires en lecture seule), udf, squashfs, nfs, cifs, et bien d'autres encore.

Une entrée swap désigne un fichier ou une partition à utiliser pour le swapping. Une entrée none est utile pour les montages bind ou move.

Plus d'un type peut être spécifié dans une liste séparée par des virgules.

En utilisant le même exemple de fichier fstab et de ligne "Win-Data" que ci-dessus, ntfs-3g est le système de fichiers sous lequel nous montons celui-ci, bien que blkid indique ntfs. Ceci est simplement dû au fait que le pilote ntfs est un pilote en lecture seule (vous permettant de voir vos fichiers Windows, mais pas de les modifier, alors que le pilote ntfs-3g (pour 3ème génération) le permet pour la plupart des options NTFS (sauf le cryptage) ainsi que des capacités de lecture-écriture :

UUID=634E43D367B0A4B1                     /media/Data    ntfs-3g noauto,x-systemd.automount,x-systemd.device-timeout=10,rw,inherit,permissions,streams_interface=windows,windows_names,compression,norecover,hide_dot_files,hide_hid_files,big_writes 0 2

Options de montage

Ce champ décrit les options de montage associées au système de fichiers.

Il est formaté comme une liste d'options séparées par des virgules. Il contient au moins le type de montage (ro ou rw), plus toute option supplémentaire appropriée au type de système de fichiers (y compris les options de réglage des performances).

Les options de base indépendantes du système de fichiers sont :

  • defaults : utiliser les options par défaut : rw, suid, dev, exec, auto, nouser, et async.
  • noauto : ne pas monter lorsque mount -a est donné (c'est à dire au démarrage).
  • user : permet à n'importe quel utilisateur de monter (c'est-à-dire qu'il n'y a pas besoin de sudo)
  • owner : permet uniquement au propriétaire du périphérique d'effectuer un montage
  • comment : ou x-<name> pour utilisation par les programmes de maintenance de fstab
  • nofail : ne pas signaler les erreurs pour ce périphérique s'il n'existe pas.

Options de montage FAT

TBD

Les Options de montage EXT2/3/4

TBD

Les options de montage NTFS-3G

TBD

Dump ?

Ce champ doit être 1 ou 0 et est utilisé par dump pour déterminer quels systèmes de fichiers doivent être vidés en cas de coredump (=crash). S'il n'est pas présent, la valeur par défaut est zéro (ne pas vider).

Numéro de passage

Ce champ est utilisé par fsck(8) pour déterminer l'ordre dans lequel les vérifications du système de fichiers sont effectuées au démarrage. Le système de fichiers racine devrait être spécifié avec un fs_passno de 1. Les autres systèmes de fichiers devraient avoir un fs_passno de 2. Les systèmes de fichiers dans un lecteur seront vérifiés séquentiellement, mais les systèmes de fichiers sur différents lecteurs seront vérifiés en même temps pour utiliser le parallélisme disponible dans le matériel.

La valeur par défaut est zéro (ne pas vérifier le système de fichiers) si elle n'est pas présente.

Trucs et astuces

La configuration par défaut va automatiquement faire `fsck` et `mount` sur les systèmes de fichiers avant de démarrer les services qui ont besoin qu'ils soient montés. Par exemple, systemd s'assure automatiquement que les montages de systèmes de fichiers distants comme NFS ou Samba ne sont lancés qu'après la mise en place du réseau. Par conséquent, les montages de systèmes de fichiers locaux et distants spécifiés dans `/etc/fstab` devraient fonctionner dès le départ. Voir

user $ man 5 systemd.mount COPY TO CLIPBOARD


pour plus de détails.

Voir aussi

https://refspecs.linuxfoundation.org/FHS_3.0/index.html