Provided by: manpages-fr-dev_4.15.0-9_all bug

NOM

       umount, umount2 - Démonter un système de fichiers

SYNOPSIS

       #include <sys/mount.h>

       int umount(const char *target);
       int umount2(const char *target, int flags);

DESCRIPTION

       umount()  et  umount2()  suppriment  l'attachement  du  système  de fichiers (de plus haut
       niveau) monté sur le répertoire target.

       Les privilèges appropriés (sous  Linux :  la  capacité  CAP_SYS_ADMIN)  sont  requis  pour
       démonter des systèmes de fichiers.

       Depuis  Linux 2.1.116  l'appel  système  umount2() fonctionne comme umount(), mais dispose
       d'options supplémentaires (flags) configurant le comportement de l'opération :

       MNT_FORCE (depuis Linux 2.1.116)
              Demander au système de fichiers d'abandonner  les  requêtes  en  attente  avant  de
              tenter  le démontage. Cela peut permettre au démontage de terminer sans attendre un
              serveur inaccessible, mais  pourrait  provoquer  la  perte  de  données.  Si  après
              l'abandon  des  requêtes,  certains processus ont encore des références en cours au
              système de fichiers, le démontage va encore échouer. Au moment de la  version 4.12,
              MNT_FORCE  n'est  prise  en  charge  que sur les systèmes de fichiers suivants : 9p
              (depuis Linux 2.6.16), ceph (depuis Linux 2.6.34), cifs (depuis Linux 2.6.12), fuse
              (depuis Linux 2.6.16), lustre (depuis Linux 3.11) et NFS (depuis Linux 2.1.116).

       MNT_DETACH (depuis Linux 2.4.11)
              Perform  a  lazy  unmount: make the mount unavailable for new accesses, immediately
              disconnect the filesystem and all filesystems mounted below it from each other  and
              from  the mount table, and actually perform the unmount when the mount ceases to be
              busy.

       MNT_EXPIRE (depuis Linux 2.6.8)
              Mark the mount as expired. If a mount is not currently in use, then an initial call
              to  umount2()   with  this flag fails with the error EAGAIN, but marks the mount as
              expired. The mount remains expired as long as it isn't accessed by any  process.  A
              second  umount2()   call specifying MNT_EXPIRE unmounts an expired mount. This flag
              cannot be specified with either MNT_FORCE or MNT_DETACH.

       UMOUNT_NOFOLLOW (depuis Linux 2.6.34)
              Ne pas déréférencer target s'il s'agit d'un lien symbolique.  Ce  paramètre  permet
              d'éviter  des problèmes de sécurité dans des programmes set-UID-root qui permettent
              aux utilisateurs ordinaires de démonter des systèmes de fichiers.

VALEUR RENVOYÉE

       En cas de succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno  est  définie
       pour préciser l'erreur.

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.

       EAGAIN Un appel à umount2() avec l'attribut MNT_EXPIRE a marqué correctement un système de
              fichiers non utilisé comme expiré.

       EBUSY  target ne peut pas être démonté car il est occupé.

       EFAULT target pointe en dehors de l'espace d'adressage de l'utilisateur.

       EINVAL target n'est pas un point de montage.

       EINVAL target is locked; see mount_namespaces(7).

       EINVAL umount2() a été appelé avec l'option MNT_EXPIRE, en même temps  que  MNT_DETACH  ou
              MNT_FORCE.

       EINVAL (depuis Linux 2.6.34)
              umount2() a été appelé avec une valeur non autorisé dans flags.

       ENAMETOOLONG
              Un des arguments est plus long que MAXPATHLEN.

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

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

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

VERSIONS

       MNT_DETACH et MNT_EXPIRE sont disponibles depuis la glibc 2.11.

CONFORMITÉ

       Ces  fonctions  sont  spécifiques  à  Linux  et  ne  doivent  pas  être employées dans des
       programmes destinés à être portables.

NOTES

   umount() and shared mounts
       Shared mounts cause any mount activity on a mount, including umount()  operations,  to  be
       forwarded  to  every  shared  mount  in  the peer group and every slave mount of that peer
       group. This means that umount()  of any peer in a set of shared mounts will cause  all  of
       its peers to be unmounted and all of their slaves to be unmounted as well.

       This propagation of unmount activity can be particularly surprising on systems where every
       mount is shared by default. On such systems, recursively bind mounting the root  directory
       of  the  filesystem  onto  a subdirectory and then later unmounting that subdirectory with
       MNT_DETACH will cause every mount in the mount namespace to be lazily unmounted.

       To ensure umount()  does not propagate in this fashion, the mount may be remounted using a
       mount(2)   call with a mount_flags argument that includes both MS_REC and MS_PRIVATE prior
       to umount()  being called.

   Détails historique
       La fonction umount d'origine était invoquée avec umount(périphérique) et renvoyait ENOTBLK
       si  l'argument  était  autre  chose  qu'un  périphérique bloc. Dans Linux 0.98p4, un appel
       umount(répertoire)  a  été  ajouté  afin  de  gérer  des  périphériques   anonymes.   Dans
       Linux 2.3.99-pre7,  l'appel  umount(périphérique)  a  été  supprimé,  en  ne  gardant  que
       umount(répertoire) (car maintenant les périphériques  peuvent  être  montés  en  plusieurs
       endroits et l'indication du périphérique ne suffit plus).

VOIR AUSSI

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

COLOPHON

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

TRADUCTION

       La  traduction  française  de  cette  page  de  manuel  a  été créée par Christophe Blaess
       <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <stephan.rafin@laposte.net>,  Thierry
       Vignaud  <tvignaud@mandriva.com>,  François Micaux, Alain Portal <aportal@univ-montp2.fr>,
       Jean-Philippe   Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)    <jean-
       luc.coulon@wanadoo.fr>,    Julien    Cristau    <jcristau@debian.org>,    Thomas   Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau  <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis
       Barbier <barbier@debian.org>,  David  Prévot  <david@tilapin.org>  et  Jean-Pierre  Giraud
       <jean-pierregiraud@neuf.fr>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General
       Public  License  version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   concernant   les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.