Provided by: manpages-fr-dev_3.57d1p1-1_all bug

NOM

       mount - Monter un système de fichiers

SYNOPSIS

       #include <sys/mount.h>

       int mount(const char *source, const char *target,
                 const char *filesystemtype, unsigned long mountflags,
                 const void *data);

DESCRIPTION

       mount()  attache le système de fichiers indiqué par source (qui est généralement un nom de
       périphérique, mais peut aussi être un répertoire ou un objet fictif) au répertoire indiqué
       par target.

       Des  privilèges  appropriés (sous Linux : la capacité CAP_SYS_ADMIN) sont nécessaires pour
       monter des systèmes de fichiers.

       Depuis Linux 2.4 un même système de fichiers peut être visible en  différents  points,  et
       plusieurs montages peuvent être empilés au même point.

       L'argument  filesystemtype  prend  une  des  valeurs  listées  dans /proc/filesystems (par
       exemple  « ext2 »,  « minix »,  « ext3 »,  « jfs »,  « xfs »,   « reiserfs »,   « msdos »,
       « proc »,  « nfs »,  « iso9660 »).  Des  types  supplémentaires  peuvent  être disponibles
       lorsque les modules appropriés sont chargés.

       L'argument mountflags peut avoir le nombre magique 0xC0ED (MS_MGC_VAL) dans ses 16 bits de
       poids fort (c'était obligatoire dans les noyaux de version antérieure à 2.4, mais ne l'est
       plus), et certains attributs de montage dans ses 16 bits de poids faible :

       MS_BIND (depuis Linux 2.4)
              Effectuer un montage lié, rendant un fichier ou une  arborescence  visibles  en  un
              autre  point  du  système  de  fichiers.  Les  montages  liés peuvent traverser les
              frontières entre  systèmes  de  fichiers  et  ouvrir  une  porte  dans  une  prison
              chroot(2).   Les   paramètres   filesystemtype   et   data  sont  ignorés.  Jusqu'à
              Linux 2.6.26, mountflags était également ignoré (le montage lié a les même  options
              de montage que le point de montage sous-jacent).

       MS_DIRSYNC (depuis Linux 2.5.19)
              Rendre  synchrones  les  modifications  sur les répertoires du système de fichiers.
              (Cette propriété peut être obtenue pour les répertoires individuels  ou  les  sous‐
              arborescences en utilisant chattr(1).)

       MS_MANDLOCK
              Autoriser les verrouillages impératifs sur le système de fichiers. (Le verrouillage
              impératif devra toutefois être  validé  fichier  par  fichier,  comme  décrit  dans
              fcntl(2).)

       MS_MOVE
              Déplacer  une  sous‐arborescence.  source  indique  un point de montage existant et
              target indique son nouvel emplacement. Le déplacement est atomique, à aucun  moment
              la  sous‐arborescence  n'est démontée. Les arguments filesystemtype, mountflags, et
              data sont ignorés.

       MS_NOATIME
              Ne pas mettre à jour les dates d'accès pour  (tous)  les  fichiers  du  système  de
              fichiers.

       MS_NODEV
              Ne pas autoriser la présence de fichiers spéciaux de périphérique sur le système de
              fichiers.

       MS_NODIRATIME
              Ne pas mettre à jour les dates d'accès pour les répertoires du système de fichiers.
              Cet attribut fournit un sous-ensemble de la fonctionnalité fournie par MS_NOATIME ;
              c'est-à-dire, MS_NOATIME implique MS_NODIRATIME.

       MS_NOEXEC
              Ne pas permettre l'exécution de programme depuis le système de fichiers.

       MS_NOSUID
              Ne pas tenir compte des bits Set-UID et Set-GID lors de l'exécution  de  programmes
              sur le système de fichiers.

       MS_RDONLY
              Monter le système de fichiers en lecture seule.

       MS_RELATIME (depuis Linux 2.6.20)
              Lorsqu'un  fichier sur ce système de fichiers est utilisé, ne mettre à jour sa date
              d'accès (atime) que si la valeur actuelle de atime est inférieure  ou  égale  à  sa
              date de dernière modification (mtime) ou de changement d'état (ctime). Cette option
              est utile pour les programmes tels que mutt(1) qui veulent savoir si un  fichier  a
              été  lu depuis sa dernière modification. Depuis Linux 2.6.30, les noyaux suivent le
              comportement fourni par cet attribut (à moins  que  MS_NOATIME  soit  indiqué),  et
              l’attribut  MS_STRICTATIME  est  nécessaire  pour avoir la sémantique originale. De
              plus, depuis Linux 2.6.30, le temps du dernier accès à un fichier est toujours  mis
              à jour s'il est plus ancien qu'un jour.

       MS_REMOUNT
              Réinitialiser un montage existant. Cela permet de modifier les attributs mountflags
              et data d'un montage existant sans avoir besoin de démonter et remonter le  système
              de fichiers. target doit avoir la même valeur que lors de l'appel mount() initial ;
              source et filesystemtype sont ignorés.

              Les   attributs   mountflags   suivants   peuvent   être   modifiés :    MS_RDONLY,
              MS_SYNCHRONOUS,  MS_MANDLOCK ;  avant  le noyau 2.6.16, MS_NOATIME et MS_NODIRATIME
              pouvaient également être modifiés. Enfin, avant  le  noyau  2.4.10,  les  attributs
              MS_NOSUID, MS_NODEV et MS_NOEXEC pouvaient être modifiés.

       MS_SILENT (depuis Linux 2.6.17)
              Supprime l'affichage de certain messages d'avertissement (printk()) dans le journal
              noyau. Cet attribut remplace l'attribut MS_VERBOSE qui avait un mauvais nom et  est
              obsolète (il était disponible depuis Linux 2.4.12), et qui a la même signification.

       MS_STRICTATIME (depuis Linux 2.6.30)
              Toujours mettre à jour le temps du dernier d'accès (atime) lorsque des fichiers sur
              le système  de  fichiers  sont  lus  (c'était  le  comportement  par  défaut  avant
              Linux 2.6.30).  Indiquer  cet  attribut  annule l'effet des attributs MS_NOATIME et
              MS_RELATIME.

       MS_SYNCHRONOUS
              Rendre synchrones les écritures sur le  système  de  fichiers  (comme  si  l'option
              O_SYNC de open(2) était indiquée à chaque appel sur ce système de fichiers).

       Depuis  Linux  2.4,  les attributs MS_NODEV, MS_NOEXEC, et MS_NOSUID sont configurables de
       manière variable sur chaque point de montage. À partir  du  noyau  2.6.16,  MS_NOATIME  et
       MS_NODIRATIME  peuvent  aussi  être  configurés  pour  chaque point de montage. L'attribut
       MS_RELATIME peut aussi être configuré pour chaque point de montage.

       L'argument data est interprété différemment  suivant  le  type  de  système  de  fichiers.
       Typiquement, c'est une chaîne d'options comprises par le système de fichiers, séparées par
       des virgules. Consultez mount(8) pour des détails sur les options disponibles pour  chaque
       type de système.

VALEUR RENVOYÉE

       S'il  réussit, cet appel système renvoie 0. S'il échoue, il renvoie -1 et remplit errno en
       conséquence.

ERREURS

       Les erreurs détaillées ici sont indépendantes du type de système de fichiers. Chaque  type
       de  système  peut  avoir  des codes d'erreurs spécifiques, et un comportement particulier.
       Consultez les sources du noyau Linux pour plus de détails.

       EACCES Un élément du chemin d'accès n'est pas consultable (voir aussi path_resolution(7)),
              ou  on  tente  de  monter  un  système  de  fichiers en lecture seule sans préciser
              l'attribut MS_RDONLY, ou bien le périphérique bloc source est situé sur un  système
              de fichiers monté avec l'attribut MS_NODEV.

       EBUSY  source  est déjà monté, ou ne peut pas être remonté en lecture seule car il y a des
              fichiers ouverts en écriture, ou ne peut pas être monté sur target car  target  est
              occupé  (c'est  le  répertoire  de travail d'un processus, le point de montage d'un
              autre périphérique, des fichiers y sont ouverts, etc.).

       EFAULT L'un des arguments pointe en‐dehors de l'espace d'adressage accessible.

       EINVAL source a un superbloc invalide, ou on tente un  remontage  (MS_REMOUNT)  alors  que
              source n'était pas encore monté sur target. Ou un déplacement (MS_MOVE) est demandé
              alors que source n'est pas un point de montage ou est « / ».

       ELOOP  Trop de liens symboliques rencontrés dans un chemin, ou un déplacement a été  tenté
              dans lequel target est un descendant de source.

       EMFILE (Dans  le  cas  où  un  périphérique  bloc n'est pas nécessaire :) Table de montage
              factice pleine.

       ENAMETOOLONG
              Un des arguments est plus long que MAXPATHLEN.

       ENODEV filesystemtype n'est pas configuré dans le noyau.

       ENOENT Un des chemins est vide ou a un composant inexistant.

       ENOMEM Le noyau n'a pas pu allouer suffisamment de mémoire.

       ENOTBLK
              Source n'est pas un périphérique bloc (et un périphérique était nécessaire).

       ENOTDIR
              target ou un préfixe de source n'est pas un répertoire.

       ENXIO  Le nombre majeur du périphérique bloc source est invalide.

       EPERM  L'appelant n'a pas les privilèges appropriés.

VERSIONS

       Les définitions de MS_DIRSYNC, MS_MOVE, MS_REC,  MS_RELATIME  et  MS_STRICTATIME  ont  été
       ajoutées aux en‐têtes de la glibc depuis la version 2.12.

CONFORMITÉ

       Cette  fonction  est  spécifique  à Linux et ne doit pas être employée dans des programmes
       destinés à être portables.

NOTES

       L'attribut original MS_SYNC a été renommé MS_SYNCHRONOUS dans Linux 1.1.69 car un  MS_SYNC
       différent a été ajouté dans <mman.h>.

       Avant  Linux  2.4,  une  tentative  d'exécution  d'un  programme Set-UID ou Set-GID sur un
       système de fichiers monté avec l'attribut MS_NOSUID échouait avec l'erreur  EPERM.  Depuis
       Linux 2.4 les bits Set-UID et Set-GID sont simplement ignorés silencieusement dans ce cas.

   Espaces de noms par processus
       À  partir  du noyau 2.4.19, Linux fournit des espaces de noms de montage par processus. Un
       espace de noms de montage est un ensemble de montage de  systèmes  de  fichiers  qui  sont
       visibles  d'un  processus.  Les  espaces  de  noms  de  montage  peuvent être (ils le sont
       généralement) partagés entre différents processus et les modifications à l'espace de  noms
       (c'est-à-dire  les  montages  et  démontages) par un processus sont visibles pour tous les
       autres processus qui  partagent  le  même  espace  de  noms  (la  situation  des  versions
       antérieures  à  pre-2.4.19  de  Linux peut être considérée comme l'utilisation d'un unique
       espace de noms partagé par tous les processus du système).

       Un processus fils créé avec fork(2) partage l'espace de noms  de  montage  de  son  père ;
       l'espace de noms de montage est préservée au travers d'un execve(2).

       Un  processus  peut  obtenir  un  espace  de  noms  de montage privé si : il a été créé en
       utilisant l'attribut CLONE_NEWNS de clone(2), dans ce cas son nouvel espace  de  noms  est
       initialisé  comme une copie de l'espace de noms du processus qui a appelé clone(2) ; ou il
       appelle unshare(2) avec l'attribut CLONE_NEWNS, ce qui provoque  l'obtention  d'une  copie
       privée  de  l'environnement  de  l'appelant,  qui  était  auparavant partagé avec d'autres
       processus, de telle sorte que les montages ou démontages futurs de  l'appelant  ne  seront
       pas  visibles  des  autres  processus  (à  l'exception des processus fils que le processus
       pourrait créer), et vice-versa.

       Le fichier /proc/PID/mounts, spécifique à Linux, expose une liste de points de montage  de
       l'espace  de  noms  de montage du processus avec l'identifiant indiqué ; consultez proc(5)
       pour des détails.

VOIR AUSSI

       umount(2), namespaces(7), path_resolution(7), mount(8), umount(8)

COLOPHON

       Cette page fait partie de la publication 3.57 du projet man-pages Linux.  Une  description
       du  projet  et  des  instructions  pour  signaler  des  anomalies  peuvent être trouvées à
       l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <http://po4a.alioth.debian.org/>  par l'équipe de traduction francophone au sein du projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe   Blaess   <http://www.blaess.fr/christophe/>   (1996-2003),    Alain    Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de
       traduction de Debian (2006-2009).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>   ou   par   un  rapport  de  bogue  sur  le  paquet
       manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de  ce  document  en  utilisant  la
       commande « man -L C <section> <page_de_man> ».