Linux |
CentOS 4.8 |
|
mount(8) |
mount − Monter un système de fichiers. |
mount [−hV] mount −a [−fnrvw] [−t
type] |
Tout fichier accessible par un système Unix est inséré dans une grande arborescence, la hiérarchie des fichiers, commençant à la racine /. Ces fichiers peuvent résider sur différents périphériques. La commande mount permet d’attacher un système de fichiers trouvé sur un périphérique quelconque à la grande arborescence du système. A l’inverse umount(8) le détachera à nouveau. La forme standard de la commande mount est |
mount −t type périphérique répertoire |
Ceci indique au noyau d’attacher le système de fichiers se trouvant sur le périphérique mentionné (dont on précise le type) dans le répertoire indiqué. Le contenu précédent du répertoire (s’il n’était pas vide), ainsi que son propriétaire et ses modes d’accès initiaux deviennent invisibles tant que le nouveau système de fichiers reste monté. Le chemin d’accès du répertoire représente alors la racine du système de fichiers se trouvant sur le périphérique. Il y a trois manières d’invoquer mount sans qu’il ne monté quoique ce soit : |
mount −h |
affiche un message d’aide |
mount −V |
affiche un numéro de version |
mount [-t type] |
fournit la liste des systèmes de fichiers actuellement montés (éventuellement ceux du type indiqué uniquement) - voir plus bas. Le système de fichiers proc n’est associé à aucun périphérique, et lorsqu’on le monte, un mot quelconque, par exemple proc peut être utilisé à la place de l’indication de périphérique. Le choix parfois rencontré none (aucun) n’est pas très heureux, car un message d’erreur ‘none busy’ (aucun occupé) lors d’un umount peut être mal interprété. La plupart des périphériques peuvent être indiqués sous forme de noms de fichiers (spécial bloc), comme /dev/sda1, mais il y a également d’autres possibilités. Par exemple, dans le cas d’un montage par NFS, périphérique peut ressembler à knuth.cwi.nl:/dir. Le fichier /etc/fstab (voir fstab(5)), contient des lignes décrivant les périphériques habituellement montés, leurs répertoires, et leurs options. Ce fichier est utilisé dans trois buts : (i) La commande |
mount −a [-t type] |
(généralement exécutée dans un script de démarrage) monte tous les systèmes de fichiers indiqués dans fstab (ou uniquement ceux du type indiqué), à l’exception de ceux dont la ligne contient le mot-clé noauto. (ii) Lorsque l’on monte un système de fichiers mentionné dans la fstab, il suffit d’indiquer le point de montage, ou le périphérique. (iii) Normalement, seul le Super-Utilisateur peut monter des systèmes de fichiers. Néanmoins, si la ligne de la fstab contient l’option user, n’importe quel utilisateur peut monter le système de fichiers correspondant. Ainsi, avec une ligne |
/dev/cdrom /cd iso9660 ro,user,noauto,unhide |
dans la fstab, n’importe quel utilisateur peut monter le système iso9660 se trouvant sur son CDROM en utilisant la commande |
mount /dev/cdrom |
ou |
mount /cd |
Pour plus de détails, voir fstab(5). Les programmes mount et umount maintiennent une liste des périphériques actuellement montés dans le fichier /etc/mtab. Si mount est invoqué sans arguments, cette liste est affichée. Quand le système proc est monté (disons sur /proc), les fichiers /etc/mtab et /proc/mounts sont très semblables. Le premier contient un peu plus d’informations, par exemple les options de montage, mais n’est pas obligatoirement à jour. (cf l’option −n plus bas). |
L’ensemble exact des options utilisées lors d’une invocation de mount est déterminé d’abord en lisant les options de la table fstab pour ce système de fichiers, puis en appliquant les options précisées par l’argument −o, et finalement en appliquant les options −r ou −w si elles sont mentionnées. Les options valides pour la commande mount sont : |
−v |
Mode volubile. |
||
−f |
Fonctionnement normal sauf pour l’appel système final qui n’est pas exécuté. Ceci simule le montage du système de fichiers. Cette option, en conjonction avec −v permet de déterminer ce que la commande mount essaye de faire. |
||
−n |
Montage sans écriture dans /etc/mtab. Ceci est nécessaire dans le cas où /etc réside sur un système de fichiers en lecture seule. |
||
−r |
Montage du système de fichiers en lecture seule. Un synonyme est −o ro. |
||
−w |
Montage du système de fichiers en lecture/écriture. Il s’agit de l’option par défaut. Un synonyme en est −o rw. |
−t type |
L’argument à la suite de −t est utilise pour préciser le type de système de fichier. Les types actuellement supportés sont mentionnés dans linux/fs/filesystems.c: minix, ext, ext2, xiafs, hpfs, fat, msdos, umsdos, vfat, proc, nfs, iso9660, smb, ncp, affs, ufs, sysv, xenix, coherent. Notez que les 3 derniers sont équivalents, et que xenix et coherent disparaîtront dans l’avenir — utilisez sysv à leur place. Le type par défaut est iso9660. Si aucune option −t n’est mentionnée, ou si le type auto est précisé, la recherche de type est effectuée sur le superbloc (minix, ext, ext2, xia, iso9660 sont supportés). Si cette recherche échoue, et si /proc/filesystems existe, alors tous les types de systèmes de fichiers listés seront essayés, sauf ceux marqués "nodev" (par exemple proc et nfs). Le type auto peut être utile pour des disquettes montées par l’utilisateur. Attention la détection s’appuie sur une heuristique (la présence de nombres "magiques" précis) qui peut conduire à une mauvaise reconnaissance. On peut indiquer plusieurs types, séparés par des virgules. Une liste de systèmes peut également être préfixée par no pour indiquer les types qu’il ne faut pas tester. (Ceci prend son sens avec l’option −a). Par exemple, la commande : |
mount −a −t nomsdos,ext |
monte tous les systèmes de fichiers, à l’exception de ceux de type msdos et ext. |
−o |
Les options de montage sont indiquées par l’argument −o suivi d’une liste d’options séparées par des virgules. Certaines d’entre-elles ne sont utiles que lorsqu’elles apparaissent dans le fichier /etc/fstab Les options suivantes sont communes au montage de tous les systèmes de fichiers : |
async |
Toutes les entrées/sorties sur le système de fichiers seront asynchrones. |
||
auto |
Peut être monté par l’argument −a. |
defaults |
Utilisation des options par défaut : rw, suid, dev, exec, auto, nouser, et async. |
dev |
Interpréter les fichiers spéciaux de périphériques présents sur le système de fichiers. |
||
exec |
Permettre l’exécution de fichiers binaires. |
noauto |
Ne peut être monté qu’explicitement (l’invocation de mount avec l’argument −a ne montera pas le système de fichiers). |
|
nodev |
Ne pas interpréter les fichiers spéciaux de périphériques présents sur le système de fichiers. |
|
noexec |
Ne pas permettre l’exécution de fichiers binaires sur le système de fichiers monté. Ceci peut être utile sur un serveur qui contient des fichiers binaires pour des architectures autres que la sienne. |
|
nosuid |
Ne pas tenir compte des bits Set-UID ou Set-GID. |
|
nouser |
Ne pas autoriser d’utilisateur ordinaire (non root) à monter le système de fichiers. C’est le comportement par défaut. |
remount |
Remonter un système de fichiers déjà monté. Ceci est utilisé pour changer les attributs de montage, principalement pour autoriser l’écriture sur un système en lecture seule. |
ro |
Montage du système en lecture seule. |
||
rw |
Montage du système en lecture/écriture. |
||
suid |
Prendre en compte les bits Set-UID ou Set-GID des fichiers se trouvant sur le système monté. |
||
sync |
Toutes les entrées/sorties sur le système de fichiers seront synchrones. |
||
user |
Autoriser les utilisateurs ordinaires (non root) à monter le système de fichiers. Ceci entraîne l’utilisation des options noexec, nosuid, et nodev (à moins qu’elles ne soient explicitement surchargées, comme dans une ligne d’option user,exec,dev,suid). |
Les options suivantes ne s’appliquent qu’à certains systèmes de fichiers. Elles sont triées par type de système. Elles s’utilisent toutes à la suite d’un argument −o. |
uid=value et gid=value |
Positionner le propriétaire et le groupe de la racine du système de fichiers (par défaut : uid=gid=0, mais avec l’option uid ou gid sans valeur, l’uid et le gid du processus appelant seront utilisés). |
setuid=value et setgid=value |
Positionner le propriétaire et le groupe de tous les fichiers du système. |
mode=valeur |
Fixer le mode d’accès à tous les fichiers au mode valeur & 0777 sans s’occuper de leurs permissions originales. Ceci ajoute également l’autorisation de parcours dans les répertoires qui permettent la lecture. La valeur doit être mentionnée en octal. |
protect |
N’autoriser aucune modification des bits d’accès aux fichiers du système. |
usemp |
Utiliser l’uid et le gid du point de montage comme uid et gid de la racine du système de fichiers jusqu’au premier sync ou umount, puis ignorer cette option. Bizarre... |
verbose |
Afficher des informations supplémentaires pour chaque montage réussi. |
prefix=chaîne |
Préfixe à utiliser avant le nom de volume lorsque l’on suit un lien. |
volume=chaîne |
Préfixe (30 caractères au plus) à utiliser ’/’ lorsque l’on suit un lien symbolique. |
reserved=valeur |
(Par défaut : 2.) Nombre de blocs inutilisés au début du périphérique. |
root=valeur |
Fournir explicitement l’emplacement du bloc racine. |
bs=valeur |
Fournir la taille de bloc. Les valeurs autorisées sont 512, 1024, 2048, et 4096. |
grpquota / noquota / quota / usrquota |
Ces options sont acceptées mais sans effet. |
Aucune. |
Aucune. Notez que le type ‘ext’ de système de fichiers est obsolète. Ne l’utilisez pas. |
‘ext2’ est le type standard pour les systèmes de fichiers Linux. |
bsddf / minixdf |
Indiquer le comportement à adopter lors de l’appel système statfs. Le comportement minixdf consiste à renvoyer dans le champ f_blocks le nombre total de blocs dans le système de fichiers, alors que le comportement bsddf (par défaut) consiste à soustraire les blocs utilisés par le système ext2 non disponibles pour le stockage. Ainsi on obtient : |
% mount /k -o minixdf; df /k; umount /k Filesystem 1024-blocks Used Available Capacity Mounted on /dev/sda6 2630655 86954 2412169 3% /k % mount /k -o bsddf; df /k; umount /k Filesystem 1024-blocks Used Available Capacity Mounted on /dev/sda6 2543714 13 2412169 0% /k (Remarquez que cet exemple montre que l’on peut, en ligne de commande, ajouter des options à celles mentionnées dans /etc/fstab.) |
check / check=normal / check=strict |
Positionner le niveau de vérification. Lorsque l’une au moins de ces options est mentionnée (et check=normal est configuré par défaut) les images des i-noeuds et des blocs sont vérifiées lors du montage (ce qui peut prendre une minute ou plus sur de gros disques). Avec une vérification stricte, la libération des blocs vérifie que le bloc à libérer se trouve bien dans une zone de données. |
check=none / nocheck |
Pas de vérification. |
debug |
Afficher des informations de débogage lors de chaque (re)mount. |
errors=continue / errors=remount-ro / errors=panic |
Définir le comportement à adopter lorsque des erreurs se produisent. On peut ignorer l’erreur en indiquant simplement que le système de fichier est corrompu, et continuer. On peut également remonter le système en lecture-seule. Ou l’on peut déclencher une panique du noyau et arrêter le système. Le comportement par défaut est inscrit dans le superbloc du fichier et peut être configuré avec tune2fs(8). |
grpid ou bsdgroups / nogrpid ou sysvgroups |
Ces options définissent le GID que reçoit un nouveau fichier créé. Quand grpid est positionné, le fichier reçoit le GID du répertoire dans lequel il est créé. Sinon (par défaut), il prend le fsgid du processus appelant, à moins que le répertoire ait son bit Set-GID positionné, auquel cas il reçoit le GID du répertoire parent, et s’il s’agit d’un nouveau répertoire, voit son bit Set-GID positionné. |
resgid=n et resuid=n |
Le système de fichiers ext2 réserve un certain pourcentage de l’espace disponible (par défaut 5%, voir mke2fs(8) et tune2fs(8)). Ces options déterminent qui peut utiliser ces blocs réservés (celui qui a l’UID indiqué, ou qui appartient au groupe mentionné). |
sb=n |
Utiliser le bloc n comme superbloc plutôt que le bloc 1. Ceci peut servir lorsque le système de fichiers a été endommagé. Généralement, des copies du superbloc sont placées tous les 8192 blocs : 1, 8193, 16385, ... (Ce qui signifie qu’il y a des centaines, voire des milliers de copies du superbloc sur des gros systèmes de fichiers. Je ne connais pas d’options de mke2fs qui créerait moins de copies). |
grpquota / noquota / quota / usrquota |
Ces options sont acceptées mais ignorées. |
blocksize=512 / blocksize=1024 |
Indiquer la taille de bloc (par défaut 512). |
uid=valeur et gid=valeur |
Indiquer le propriétaire et le groupe de tous les fichiers (par défaut : l’uid et le gid du processus appelant). |
umask=valeur |
Fixer l’umask (c’est à dire le masque de bit des permissions qui ne sont pas fournies). Par défaut il s’agit de l’umask du processus en cours. La valeur est donnée en octal. |
check=valeur |
Il y a trois niveaux de vérification des noms de fichiers : |
r[elaxed] |
Les majuscules et minuscules sont acceptées et équivalentes. La partie excédentaire des noms longs est supprimée (par exemple nombeaucouptroplong.foobar devient nombeauc.foo). Les espaces en tête, et au sein des noms sont acceptés, tant dans le nom que dans l’extension. |
n[ormal] |
Comme "relaxed", mais de nombreux caractères spéciaux (*, ?, <, espaces, etc...) sont refusés. C’est l’attitude par défaut. |
s[trict] |
Comme "normal", mais les noms ne peuvent pas contenir de partie longue, et les caractères spéciaux qui sont acceptés par Linux mais pas par MS-DOS sont rejetés (+, =, espaces, etc...) |
conv=b[inary] / conv=t[ext] / conv=a[uto] |
Le système de fichiers fat peut effectuer automatiquement les conversions CRLF<-->NL (format de texte MS-DOS vers format de texte UNIX). Les modes de conversion suivants sont autorisés : |
binary |
aucune conversion. C’est le comportement par défaut. |
|
text |
Conversion CRLF<-->NL sur tous les fichiers. |
|
auto |
Conversion CRLF<-->NL sur tous les fichiers qui n’ont pas une extension de "binaire bien-connu". Cette liste, non exhaustive, se trouve au début de fs/fat/misc.c (dans Linux 2.0, la liste est : exe, com, bin, app, sys, drv, ovl, ovr, obj, lib, dll, pif, arc, zip, lha, lzh, zoo, tar, z, arj, tz, taz, tzp, tpz, gz, tgz, deb, gif, bmp, tif, gl, jpg, pcx, tfm, vf, gf, pk, pxl, dvi). |
Les programmes qui calculent des positionnements avec lseek n’aimeront pas du tout la conversion text. Plusieurs personnes ont détruit des données avec cette conversion. Faites attention ! Pour les systèmes montés en mode binaire, un outil de conversion (fromdos/todos) est disponible. |
debug |
Activer l’attribut de débogage. Un numéro de version, et une liste des paramètres du système de fichiers seront affichés (ces données seront également affichées si le système est incohérent). |
fat=12 / fat=16 |
Préciser s’il s’agit d’une FAT 12 bits ou 16 bits. Ceci a priorité sur la détection automatique du type de FAT. A n’utiliser qu’avec beaucoup de précautions ! |
quiet |
Activer l’attribut de silence. Les tentatives de modification du propriétaire ou du mode d’accès aux fichiers ne renverront pas d’erreurs, bien qu’elles échouent. A utiliser avec précaution ! |
sys_immutable, showexec, dots, nodots, dotsOK=[yes|no] |
Diverses tentatives risquées de forcer un comportement Unix ou Dos dans un système de fichiers FAT. |
uid=valeur et gid=valeur |
Fixer le propriétaire, et le groupe, de tous les fichiers (par défaut : l’uid et le gid du processus appelant). |
umask=valeur |
Fixer l’umask (c’est à dire le masque de bit des permissions qui ne sont pas fournies). Par défaut il s’agit de l’umask du processus en cours. La valeur est donnée en octal. |
case=lower / case=asis |
Convertir les noms de fichiers en minuscules (lower) ou les laisser tels quels (asis). Par défaut : case=lower. |
conv=binary / conv=text / conv=auto |
Avec conv=text, supprimer une partie des retour-chariots (en particulier tout ceux suivis par un saut-de-ligne) durant la lecture des fichiers. Avec conv=auto, choisir, plus ou moins au hasard, entre conv=binary et conv=text. Avec conv=binary, lire le contenu des fichiers sans les modifier (option par défaut). |
nocheck |
Ne pas interrompre le montage si le test de cohérence échoue. |
Les noms de fichiers iso9660 normaux se présentent dans le format 8.3 (limite de longueur des noms comme sous Dos). Tous les caractères sont en majuscule. De plus, rien n’est prévu pour stocker le propriétaire du fichier, le mode d’accès, le nombre de liens, les fichiers spéciaux blocs/caractères, etc... Rock Ridge est une extension du format iso9660 qui permet d’offrir ces fonctionnalités Unix. En gros, des données sont ajoutées pour chaque entrée de chaque répertoire afin de fournir les informations désirées. Lorsque l’extension Rock Ridge est utilisée, le système de fichiers est totalement semblable à un système de fichiers Unix normal (sauf qu’il est en lecture seule évidemment). |
norock |
Ne pas utiliser les extensions Rock Ridge, même si elles sont disponibles. Voir map. |
check=r[elaxed] / check=s[trict] |
Avec check=relaxed, les noms de fichier sont convertis en minuscules. Ceci n’a probablement d’intérêt qu’avec les options norock et map=normal. (Par défaut : check=strict.) |
uid=value et gid=value |
Fixer le propriétaire, et le groupe, de tous les fichiers en écrasant éventuellement les informations trouvées dans les extensions Rock Ridge (par défaut : uid=0,gid=0.) |
map=n[ormal] / map=o[ff] |
Pour les volumes sans extension Rock Ridge, la traduction des noms de fichiers convertit les majuscules en minuscules, supprime l’éventuel ‘;1’ final, and transforme ‘;’ en ‘.’. Avec map=off il n’y a pas de traduction. Voir norock. (Par défaut : map=normal.) |
mode=value |
Pour les volumes non-Rock Ridge, donner le mode indiqué à tous les fichiers (Par défaut : lecture autorisée pour tous) |
unhide |
Montrer également les fichiers cachés, et les fichiers d’extension. |
block=[512|1024|2048] |
Fixer la taille de bloc (par défaut : block=1024.) |
conv=a[uto] / conv=b[inary] / conv=m[text] / conv=t[ext] |
(par défaut : conv=binary.) Depuis Linux 1.3.54 cette option n’a plus d’effet. (les conversions autres que binaires étaient dangereuses, avec un risque important de corruption de données). |
cruft |
Si l’octet de poids fort de la longueur d’un fichier contient n’importe quoi, utilisez cette option pour indiquer à mount d’ignorer ces octets dans toutes les longueurs de fichiers. Ceci entraîne que la longueur maximale d’un fichier sera 16 Mo. L’option ‘cruft’ est positionnée automatiquement quand la taille totale du CD-Rom est erronée (négative, supérieure à 800 Mo, ...), ou quand on rencontre des numéros de séquence de volume autres que 0 ou 1. |
Aucune. |
Voir les options de montage pour fat. Si le système de fichiers msdos présente des incohérences, une erreur sera indiquée, et le montage sera effectue en lecture seule. On peut réactiver l’écriture en remontant le système de fichiers. |
Tout comme nfs, l’implémentation ncp nécessite un argument binaire (une structure ncp_mount_data) lors de l’appel système. Cet argument est construit par ncpmount(8) et la version actuelle de mount (2.5k) ne connaît rien en ce qui concerne ncp. |
Le noyau a besoin, pour monter un système nfs , d’un argument binaire lors de l’appel système (une structure nfs_mount_data. Néanmoins le programme mount peut analyser les arguments suivants, et préparer la structure nécessaire au noyau. Les options suivantes sont de type ‘option=valeur’ : rsize=n, wsize=n, timeo=n, retrans=n, acregmin=n, acregmax=n, acdirmin=n, acdirmax=n, actimeo=n, retry=n, port=n, mountport=n, mounthost=nom, mountprog=n, mountvers=n, nfsprog=n, nfsvers=n, namlen=n. L’option addr=n est acceptée, mais ignorée. On peut également employer les options booléennes suivantes, éventuellement précédées par no : bg, fg, soft, hard, intr, posix, cto, ac, tcp, udp. Pour plus de détails, voir nfs(5). Les options particulièrement utiles sont les suivantes : |
rsize=8192,wsize=8192 |
qui améliorera la vitesse de votre connexion nfs (les tailles des buffers par défaut sont 1024 octets) |
soft |
qui permet au noyau de renoncer au bout d’un moment si le serveur nfs ne répond pas (par défaut le noyau répète indéfiniment sa requête). On peut indiquer un délai avec timeo=time. Ceci est surtout utile s’il y a des chances pour que le serveur nfs soit arrêté, ou redémarre alors que des processus essayent d’accéder à ses fichiers. |
uid=value et gid=value |
Ces options sont reconnues, mais n’ont pas d’effet semble-t-il. |
Tout comme nfs, l’implémentation smb nécessite un argument binaire (une structure smb_mount_data) lors de l’appel système. Cet argument est construit par smbmount(8) et la version actuelle de mount (2.5k) ne connaît rien en ce qui concerne smb. |
Aucune. |
Aucune. |
Voir les options de montage pour msdos. |
Tout d’abord les options de montage pour Fat sont reconnues. De plus, il existe : |
uni_xlate |
Traduction des caractères Unicode non gérés en séquences d’échappement spéciales. Ceci permet de sauver et de restaurer des fichiers dont le nom contient n’importe quel caractère Unicode. Sans cette option, un ’?’ est utilisé à la place des caractères dont la traduction est impossible. Le caractère d’échappement est ’:’ puisqu’il est de toute manière illégal dans les noms de fichiers vfat. La séquence d’échappement utilisée pour remplacer le caractère unicode u est : ’:’, (u & 0x3f), ((u>>6) & 0x3f), (u>>12). |
posix |
Autoriser l’existence de deux fichiers dont les noms ne diffèrent que par une distinction majuscule/minuscule. |
nonumtail |
Essayer d’abord de créer un nom court sans numéro de séquence avant d’essayer nom~num.ext. |
Aucune. |
Aucune. xiafs n’est pas mauvais en soi, mais il n’est plus très répandu et n’est pas maintenu. Il vaut mieux éviter de l’utiliser. |
Il est possible de faire un montage au travers du périphérique loop (boucle). Par exemple la commande : mount /tmp/fdimage /mnt -t msdos -o loop=/dev/loop3,blocksize=1024 va faire correspondre le périphérique boucle /dev/loop3 au fichier /tmp/fdimage, puis monter ce périphérique sur /mnt. Ce type de montage dispose de trois options, nommées loop, offset et encryption, qui sont en réalité des options pour losetup(8). Si aucun périphérique loop n’est mentionné explicitement (uniquement l’option ‘−o loop’), alors mount essayera de trouver une boucle inutilisée et se l’attribuera. |
/etc/fstab table des systèmes de
fichiers |
mount(2), umount(2), fstab(5), umount(8), swapon(8), nfs(5), mountd(8), nfsd(8), mke2fs(8), tune2fs(8), losetup(8) |
Le montage d’un système de fichiers corrompu peut déclencher un crash système. Sous Linux, certains systèmes de fichiers ne supportent pas l’option −o sync (le système ext2fs supporte les mises à jour synchrones (à la manière BSD) lorsqu’il est monté avec l’option sync). L’option −o remount peut parfois s’avérer incapable de modifier les paramètres de montage (tous les paramètres ext2fs, sauf sb, sont modifiables lors d’un remontage par exemple, mais vous ne pouvez pas modifier le gid ou l’umask pour un système fatfs). |
Une commande mount est apparue dans UNIX AT&T Version 6. |
Christophe Blaess, 1997. |
mount(8) |