Fstab
Le fstab sous UNIX/Linux est un fichier contenant la table des systèmes de fichiers à monter au démarrage. Il est lu par le système de gestion de services au démarrage de la machine (sur la plupart des Linux, c'est Systemd qui ce charge de cette tâche).
ASTUCE
Afin de tester le fonctionnement d'un montage automatique sans redémarrer (ce qui, en cas de non fonctionnement, causerai un temps d'attente interminable - merci Systemd... - et obligerai le système à passer en mode "maintenance"), il est possible d'utiliser la commandemount -a
pour monter l'ensemble des lignes spécifiés dans le fstab.Structure
Ce fichier se compose de six champs séparés par des espaces/tabulations:
# <partition> <point de montage> <type> <options> <déversement> <poids fsck>
Explications:
- <partition>: chemin du périphérique de type bloc (peut être indiqué via son chemin ou son UUID)
- <point de montage>: lieu de montage de la partition
- <type>: nom du système de fichiers de la partition
- <options>: options de montage
- <déversement>: Aucune idée de l'utilité (laisser à zéro)
- <poids fsck>: défini l'ordre du test fsck de la partition (plus c'est faible et plus c'est prioritaire)
Chaque ligne du fichier représente un point de montage différents.
Options de montages
Les options indiquées dans le fichier fstab sont les mêmes que celles de la commande mount.
Les options communes à tous les types de systèmes de fichiers sont:
ro / rw | Montage en lecture seulement/lecture-écriture |
suid / nosuid | Autorise ou interdit les opérations sur les bits suid et sgid |
dev / nodev | Interprète/n'interprète pas les périphériques caractères ou les périphériques blocs spéciaux sur le système de fichiers |
exec / noexec | Autorise ou interdit l’exécution de fichiers binaires sur ce système de fichiers |
auto / noauto | Le système de fichiers est (c’est l’option par défaut) / n'est pas monté automatiquement |
user / nouser | Permet à tout utilisateur / seulement à root (C’est le paramétrage par défaut) de monter le système de fichiers correspondant |
sync / async | Selon cette valeur, toutes les entrées/sorties se feront en mode synchrone ou asynchrone |
defaults | Utilise le paramétrage par défaut (c’est équivalent à rw, suid, dev, exec, auto, nouser, async) |
Exemples de montage
Systèmes de fichiers locaux
# Montage avec le chemin de la partition
/dev/mapper/vHD-vPart1 / btrfs defaults 0 0
# Montage avec l'UUID de la partition
UUID=b856b332-77cf-4103-ae4b-7672d3393844 /boot ext2 defaults
Samba
//192.168.170.178/partage/ /media/partage cifs rw,user,iocharset=utf8,username=toto,password=SonMotDePasse,uid=1000,gid=1000,file_mode=0755,dir_mode=0755
NFS
192.168.1.10:/home/toto /media/toto nfs rw 0 0
Accents dans le fstab
Pour des partage avec accent, il faut les noter sous forme octale. Une valeur octale doit toujours être égale à 3 caractères, si il y a un 0 à 040 (pour l'espace) c'est par ce que le code 40 (qui correspond à l'espace) ne respecte pas cette règle (on ajoute donc un 0).
Dans le cas où l'on veux mettre un caractère accentué é (qui a comme code octal 0303 0251) il faut respecter la règle des 3 caractères en supprimant le 0 devant chaque octet et en les collant avec un échappement sur chacun d'eux comme ceci:
/home/toto/Film/ /home/titi/Vid\303\251os/ none bind 0 0
Ces éléments sont décrits dans ce post et provenant de cette source, le script perl unum.pl (disponible dans nos fichiers) permet de trouver le code octal d'un caractère donné.