Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:fstab [29/11/2012 12:39] 127.0.0.1 édition externe |
doc:systeme:fstab [18/09/2013 03:50] martinux_qc [Description] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== fstab ====== | + | ====== /etc/fstab ====== |
+ | Pages de manuel à créer :\\ | ||
+ | * les différents types de systèmes de fichiers\\ | ||
+ | *{{tag>en-chantier}} | ||
=== Nota === | === Nota === | ||
- | ''**TUTO EN COURS D'AMÉLIORATION 16/08/2011**'' | + | ''**TUTO EN COURS D'AMÉLIORATION 17/09/2013**'' |
- | * Contributeurs, voir : [[manuel:config:fstab2]] | + | * Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ! |
- | + | * DÉBUTANT - À savoir | |
- | ===== DÉBUTANT - À savoir : ===== | + | |
* [[manuel:partition | Les partitions en Détail]] | * [[manuel:partition | Les partitions en Détail]] | ||
* Le manuel du [[manuel:partitionnement|PARTITIONNEMENT]] | * Le manuel du [[manuel:partitionnement|PARTITIONNEMENT]] | ||
Ligne 14: | Ligne 15: | ||
- | ===== Le fichier fstab - Fonction ===== | + | ===== Description ===== |
- | Le fichier ''/etc/fstab'' contient les points de montage pour chacun des systèmes de fichiers utilisés couramment sur le système. | + | ~~NOCACHE~~ |
- | + | Le fichier **''/etc/fstab''**(**F**ile **S**ystem **TAB**le) permet à la commande [[commande:mount | mount]] de peupler le [[http://www.pathname.com/fhs | système de fichiers]] utilisé par votre système debian au cours de son initialisation. | |
- | Un fichier **fstab** est composé de plusieurs lignes décrivant chacune les conditions de montage de chaque système de fichier. On retrouve dans ce fichier toutes les informations des systèmes de fichiers des partitions. | + | |
- | ===== Le fichier fstab - Lecture et Edition ===== | + | La première [[manuel:structure_repertoires-racine | partition]] à être montée est donc la **partition racine** réelle (''/'') qui sera utilisée comme cible par [[http://lfs.traduc.org/view/blfs-svn/postlfs/initramfs.html | initramfs]](Système de fichier en RAM) pour un [[http://wiki.debian-facile.org/manuel:chroot | chroot]] de son système de fichiers. |
- | Par sécurité, le fichier ''/etc/fstab'' peut être lu par les users du système mais, pour être modifié manuellement, il doit être éditer en tant que root. \\ **DÉBUTANT Voir :** | + | === À voir absolument === |
- | - [[commande:su | la commande su]] et | + | |
- | - [[commande:editeur:nano | la commande nano]]. | + | |
- | Voici à quoi peut ressembler un fichier **fstab** avec [[commande:cat | la commande cat]] dans un [[manuel:terminal]] sous votre //user// : | + | [[http://www.pathname.com/fhs | File Hierachy Standard]]\\ |
- | $ cat /etc/fstab | + | ==== Les attributs du fichier ''/etc/fstab'' ==== |
- | <file system> <mount point> <type> <options> <dump> <pass> | + | <code> |
- | proc /proc proc defaults 0 0 | + | michel@deb9550:~$ ls -l /etc/fstab |
- | /dev/sda1 / ext3 errors=remount-ro 0 1 | + | -rw-r--r-- 1 root root 1482 sept. 10 19:22 /etc/fstab |
- | /dev/sda6 /home ext3 defaults 0 2 | + | michel@deb9550:~$ |
- | /dev/sda9 /tmp ext3 defaults 0 2 | + | </code> |
- | /dev/sda7 /usr ext3 defaults 0 2 | + | Le fichier ''/etc/fstab'' appartient à ''root'' et au groupe ''root''.\\ |
- | /dev/sda8 /var ext3 defaults 0 2 | + | Les [[manuel:protection_droits | attributs]] du fichier indiquent qu'il peut être lu par tous, mais il faudra avoir les privilèges du compte ''root'' pour pouvoir y apporter une modification. |
- | /dev/sda10 none swap sw 0 0 | + | |
- | /dev/hda /media/cdrom0 udf,iso9660 user,noauto 0 0 | + | |
- | # /dev/sda5 /mnt/stock ext3 defaults 0 2 | + | |
- | <code>cat /etc/fstab | + | ==== Le contenu du fichier ''/etc/fstab'' ==== |
- | # /etc/fstab: static file system information. | + | <code fstab> |
+ | # /etc/fstab: static file system information. | ||
# | # | ||
# Use 'blkid' to print the universally unique identifier for a | # Use 'blkid' to print the universally unique identifier for a | ||
Ligne 48: | Ligne 44: | ||
# that works even if disks are added and removed. See fstab(5). | # that works even if disks are added and removed. See fstab(5). | ||
# | # | ||
- | # <file system> <mount point> <type> <options> <dump> <pass> | + | # <file system> <mount point> <type> <options> <dump> <pass> |
- | proc /proc proc defaults 0 0 | + | |
- | # / was on /dev/sda2 during installation | + | |
- | UUID=50fc4e6e-6cda-485a-b6f3-d45e758c0dc2 / ext4 errors=remount-ro 0 1 | + | |
- | # /boot was on /dev/sda1 during installation | + | |
- | UUID=0555975e-122d-427e-a3b5-5b7cb8b21893 /boot ext4 defaults 0 2 | + | |
- | # /home was on /dev/sda9 during installation | + | |
- | UUID=fe1b0f96-c597-450c-9974-d2555fd988eb /home ext4 defaults 0 2 | + | |
- | # /tmp was on /dev/sda8 during installation | + | |
- | UUID=1a7c3bd9-7f5f-4c00-8a54-37bfd430570f /tmp ext4 defaults 0 2 | + | |
- | # /usr was on /dev/sda6 during installation | + | |
- | UUID=d6ee71d0-d2f9-40a0-9667-fb47fc6d9d21 /usr ext4 defaults 0 2 | + | |
- | # /var was on /dev/sda7 during installation | + | |
- | UUID=62f52a5b-fec2-486e-af09-7374b1071384 /var ext4 defaults 0 2 | + | |
- | # swap was on /dev/sda5 during installation | + | |
- | UUID=14fbd141-bd1d-4bc4-a804-02f87f93a192 none swap sw 0 0 | + | |
- | /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0 | + | |
- | /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 | + | |
- | # /media/stock was on /dev/sda4 during installation | + | # / was on /dev/sda12 during installation |
- | UUID=3eac5a2f-ca7a-4051-b49f-5151bc9977e9 /media/stock ext3 defaults 0 2 | + | UUID=a69d9182-f4c7-4276-b35d-7d5f9bd50a57 / ext4 errors=remount-ro 0 1 |
- | # /media/disk-11 was on /dev/sdb2 during installation | + | # /home was on /dev/sda16 during installation |
- | UUID=269f97c5-0fcb-4c17-b490-63f3357ebccf /media/disk-11 ext3 defaults 0 2 | + | UUID=3df408e9-e65e-4659-9881-84ae6d077c43 /home ext4 defaults 0 2 |
- | # /media/disk-2 was on /dev/sdc1 during installation | + | # /tmp was on /dev/sda15 during installation |
- | UUID=86008380-288e-492f-97a5-5f2f4a7bc023 /media/disk-2 ext3 defaults 0 2 | + | UUID=016896b2-3179-47b6-99ba-e0dd63cad4d6 /tmp ext4 defaults 0 2 |
- | # /media/disk-3 was on /dev/sdd1 during installation | + | # /usr was on /dev/sda13 during installation |
- | UUID=99ee1b3f-0f0e-4d8b-89a8-2af1848cf2fd /media/disk-3 ext3 defaults 0 2 | + | UUID=9e2ba03c-bada-4db8-a761-fe3093b92860 /usr ext4 defaults 0 2 |
- | </code> | + | |
- | ==== Signification : ==== | + | # /var was on /dev/sda14 during installation |
+ | UUID=b9bf96f4-694a-453f-aad6-d84efbb1f299 /var ext4 defaults 0 2 | ||
- | Le nom **fstab** signifie : ''file system table'', ce qui se traduit en français par : ''//table de système de fichiers//''. | + | # /mnt/1500-1 disque 1.5To partition 1 de 1.2 To (données) |
+ | UUID=e5df58e4-0e83-439a-8403-3559ef74e4d6 /mnt/1500-1 ext4 rw,user 0 0 | ||
- | ==== Utilisation ==== | + | # /dev/500-17-virt-img /mnt/500-17-virt-img (pour les machines virtuelles) |
+ | UUID=74349cee-dd8c-4ce5-ab45-a8e7b25cdda0 /mnt/500-17-virt-img ext4 rw,user 0 0 | ||
- | Le fichier ''/etc/fstab'' est lu à chaque fois que vous démarrez votre ordinateur. \\ | + | # swap /dev/sda5 |
- | Il est lu également à chaque fois que vous utilisez la commande : [[commande:mount|mount]]. | + | UUID=a3e02ccd-54ed-4172-9830-23fea1ffe5ec swap swap sw 0 0 |
+ | </code> | ||
- | C'est donc un fichier important, et mieux vaut ne pas rester dans l'ignorance de son fonctionnement. | + | ==== 6 champs par ligne ==== |
- | C'est ce fonctionnement que nous allons tenter d'expliquer ci après. | + | Les lignes dont le premier caractère est un ''#'' seront ignorées par la commande ''mount''. On dit alors que ces lignes sont **commentées**. |
+ | Chaque ligne du fichier ''/etc/fstab'' est composée de six champs qui seront utilisés par la commande ''mount'' comme paramètres, pour chaque système de fichiers à monter. | ||
+ | ^ Nom du champ ^ description ^ | ||
+ | | file system | Référence de la partition à monter -> **UUID** (voir la commande [[commande:blkid | blkid]]).| | ||
+ | | mount point | Répertoire existant dans le système de fichier qui servira de [[http://fr.wikipedia.org/wiki/Point_de_montage | point de montage]] à la partition.| | ||
+ | | type | Type de format du système de fichier à mounter. | | ||
+ | | options | Option ou liste d'options de mountage. | | ||
+ | | dump | Indicateur pour l'utilitaire de sauvegarde "dump". | | ||
+ | | pass | Indicateur pour la vérification par la commande [[http://wiki.debian-facile.org/commande:fsck | fsck]] avant montage.| | ||
+ | |||
+ | ==== Les options ==== | ||
+ | |||
+ | La liste ci-dessous n'est pas exhaustive, pour connaître toutes les options possibles faire un **''man mount''**. | ||
+ | |||
+ | Dans ce tableau, les options **en gras** sont les options activées par le choix de l'option "**defaults**". | ||
+ | ^ 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 |**"monté" 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 montage dé-montage** / Tous les utilisateurs aussi. | | ||
+ | | **async** / sync |**Accès en mode asynchrone** / synchrone. | | ||
+ | | owner |Seul le propriétaire sera autorisé à "monter" "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. | | ||
===== swap ===== | ===== swap ===== | ||
Ligne 122: | Ligne 133: | ||
Merci à **Blacksad** et **Herbert west** d'avoir partagé cette indication sur le forum là : | Merci à **Blacksad** et **Herbert west** d'avoir partagé cette indication sur le forum là : | ||
- | * http://debian-facile.org/viewtopic.php?pid=54674#p54674 | + | * [[http://debian-facile.org/viewtopic.php?pid=54674#p54674 |
//Et à la vigilance du //**captnfab**// qui du haut de son timon nous apporte les précisions supplémentaires.// :-D | //Et à la vigilance du //**captnfab**// qui du haut de son timon nous apporte les précisions supplémentaires.// :-D | ||
Ligne 135: | Ligne 146: | ||
Il indique donc à votre système (en fait à **mount**) : | Il indique donc à votre système (en fait à **mount**) : | ||
- | * quelles partitions il faut monter automatiquement | + | * quelles partitions il faut monter automatiquement (par exemple à l'aide de leur numéro d'identification : **UUID**) |
* quelles sont les partitions que les users (utilisateurs) peuvent monter eux-mêmes. | * quelles sont les partitions que les users (utilisateurs) peuvent monter eux-mêmes. | ||
Ligne 145: | Ligne 156: | ||
==== Les champs ==== | ==== Les champs ==== | ||
+ | //FIXME (Note pour les contributeurs au wiki) : Lexique "système de fichier"// \\ | ||
+ | //FIXME (Note pour les contributeurs au wiki) : Lexique "fichier périphérique"// \\ | ||
== <file system> == | == <file system> == | ||
Ligne 163: | Ligne 176: | ||
== <dump> == | == <dump> == | ||
+ | //FIXME (Note pour les contributeurs au wiki) : Page wiki sur l'utilitaire 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. | 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. | ||
Ligne 171: | Ligne 185: | ||
* 2 pour les autres partitions UNIX ou | * 2 pour les autres partitions UNIX ou | ||
* 0 si la partition ne doit pas être testé par **fsck** (la **swap** et les partitions windows par exemple). | * 0 si la partition ne doit pas être testé par **fsck** (la **swap** et les partitions windows par exemple). | ||
- | |||
- | == <pass> == | ||
* **<pass>** est utilisé pour l'ordre de vérification au démarrage | * **<pass>** est utilisé pour l'ordre de vérification au démarrage | ||
Ligne 184: | Ligne 196: | ||
<note important>Certains systèmes de fichiers tels que **proc**, **sysfs**, **tmpfs** ou **swap** sont un peu particuliers, il est fortement recommandé de ne pas y toucher sans savoir ce que l'on fait.</note> | <note important>Certains systèmes de fichiers tels que **proc**, **sysfs**, **tmpfs** ou **swap** sont un peu particuliers, il est fortement recommandé de ne pas y toucher sans savoir ce que l'on fait.</note> | ||
+ | //FIXME (Note pour les contributeurs au wiki) : Liens vers des pages expliquant ce que sont ces systèmes de fichiers et comment les utiliser.// | ||
=== <option> Listes des options === | === <option> Listes des options === | ||
- | * async : i/o asynchrones, par exemple une copie peut être différée | + | La liste ci-dessous n'est pas exhaustive,\\ |
- | * atime : mettre à jour la date d'accès à chaque accès | + | pour connaître toutes les options possibles faire un ''man mount''. |
- | * auto : montage automatique lors d'un appel à mount -a | + | |
- | * defaults : équivalent à rw,suid,dev,exec,auto,nouser,async | + | |
- | * dev : interprète les fichiers device | + | |
- | * exec : permet l'exécution de programmes | + | |
- | * noatime : ne pas mettre à jour la date d'accès | + | |
- | * noauto : pas de montage automatique | + | |
- | * nodev : ne pas interpréter les fichiers device | + | |
- | * noexec : interdiction d'exécuter les programmes | + | |
- | * nosuid : les bits SetUID et SetGID ne sont pas pris en compte | + | |
- | * nouser : seul root a la permission de faire un mount | + | |
- | * ro : read only : accès en lecture seulement | + | |
- | * rw : read write : accès en lecture et écriture | + | |
- | * setuid : les bits SetUID et SetGID sont pris en compte | + | |
- | * sync : i/o synchrones | + | |
- | * user : permission accordée aux utilisateurs ordinaires de faire un 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. | | ||
+ | ===== Ajouter une partition ===== | ||
+ | |||
+ | Pour ajouter dans le fstab une partition par son UUID, vous devez l'identifier. | ||
+ | |||
+ | - Dans un [[manuel:terminal]] user utilisez la [[commande:ls | commande ls]] ainsi :<code bash>ls -lh /dev/disk/by-uuid</code> | ||
+ | - Créez un répertoire de montage(([[commande:mkdir]])) par exemple dans /mnt. | ||
+ | - Ajoutez avec nano la ligne qui concerne le disque comme dans cet exemple en l'adaptant pour votre cas :<code># /mnt/repertoire_nom was on /dev/sdxX during installation | ||
+ | UUID=votre_UUID /mnt/repertoire_nom format defaults 0 0</code> | ||
+ | - Et pour monter le système de fichier dans le répertoire dédié, utilisez la [[commande:mount | commande mount]] dans un terminal root :<code root>mount -a</code> | ||
===== Quelques exemples pratiques de lignes dans fstab ===== | ===== Quelques exemples pratiques de lignes dans fstab ===== | ||
+ | |||
+ | //FIXME (Note pour les contributeurs au wiki) : Laïus sur les périphériques amovibles, pmount et le groupe plugdev (pourquoi a priori on ne veut pas mettre les périphériques amovibles dans le fstab, pourquoi parfois c'est bien quand même, sécurité, etc.).// | ||
Dans ces exemples pratiques, /dev/mondisque correspond au périphérique concerné et /media/mondossier au dossier où vous désirez monter votre périphérique. | Dans ces exemples pratiques, /dev/mondisque correspond au périphérique concerné et /media/mondossier au dossier où vous désirez monter votre périphérique. | ||
Ligne 235: | Ligne 260: | ||
Tout d'abord, détail de mon fichier fstab perso, utilisé pour l'exemple : | Tout d'abord, détail de mon fichier fstab perso, utilisé pour l'exemple : | ||
- | # nano /etc/fstab | + | <code bash>cat /etc/fstab</code> |
- | /dev/hda6 / ext3 acl,user_xattr 1 1 | + | /dev/hda6 / ext3 acl,user_xattr 1 1 |
- | /dev/hda7 /home ext3 acl,user_xattr 1 2 | + | /dev/hda7 /home ext3 acl,user_xattr 1 2 |
- | /dev/hda1 /windows/C vfat users,gid=users,umask=0002,utf8=true 0 0 | + | /dev/hda1 /windows/C vfat users,gid=users,umask=0002,utf8=true 0 0 |
- | /dev/hda5 swap swap defaults 0 0 | + | /dev/hda5 swap swap defaults 0 0 |
- | proc /proc proc defaults 0 0 | + | proc /proc proc defaults 0 0 |
- | sysfs /sys sysfs noauto 0 0 | + | sysfs /sys sysfs noauto 0 0 |
- | debugfs /sys/kernel/debug debugfs noauto 0 0 | + | debugfs /sys/kernel/debug debugfs noauto 0 0 |
- | usbfs /proc/bus/usb usbfs noauto 0 0 | + | usbfs /proc/bus/usb usbfs noauto 0 0 |
- | devpts /dev/pts devpts mode=0620,gid=5 0 0 | + | devpts /dev/pts devpts mode=0620,gid=5 0 0 |
Les dossiers que j'utilise ne sont peut-être pas pareils que les votres. Il vous faut juste les adapter à votre matériel. | Les dossiers que j'utilise ne sont peut-être pas pareils que les votres. Il vous faut juste les adapter à votre matériel. |