Provided by: manpages-fr-dev_4.19.0-7_all bug

NOM

       sync, syncfs - Vider les caches du système de fichiers sur le disque

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       void sync(void);

       int syncfs(int fd);

   Exigences    de    macros    de   test   de   fonctionnalités   pour   la   glibc   (consulter
   feature_test_macros(7)) :

       sync() :
           _XOPEN_SOURCE >= 500
               || /* Depuis la glibc 2.19 : */ _DEFAULT_SOURCE
               || /* glibc <= 2.19 : */ _BSD_SOURCE

       syncfs() :
           _GNU_SOURCE

DESCRIPTION

       sync()  force  l'écriture  sur  les  systèmes  de  fichiers  sous-jacents  de  toutes  les
       métadonnées de fichier et données modifiées en cache.

       syncfs()  agit  comme  sync(), mais ne synchronise que le système de fichiers contenant le
       fichier référencé par le descripteur de fichier ouvert fd.

VALEUR RENVOYÉE

       Si elle réussit, syncfs() renvoie 0. Si elle échoue, elle renvoie -1 et définit errno pour
       indiquer l'erreur.

ERREURS

       sync() réussit toujours.

       syncfs() peut échouer au moins dans les cas suivants :

       EBADF  fd n'est pas un descripteur de fichier valable.

       EIO    Une erreur s'est produite pendant la synchronisation. Cette erreur peut être liée à
              des données écrites dans n'importe quel fichier du système de  fichiers  ou  à  des
              métadonnées liées au système de fichiers lui-même.

       ENOSPC L'espace disque a été épuisé pendant la synchronisation.

       ENOSPC, EDQUOT
              Les données ont été écrites dans un fichier sur un système de fichiers NFS ou autre
              qui n'allouait pas d'espace au moment de l'appel système à  write(2)  et  certaines
              écritures antérieures ont échoué du fait d'un espace de stockage insuffisant.

VERSIONS

       syncfs()  est  apparue  dans  Linux 2.6.39 ;  la  prise en charge de la bibliothèque a été
       ajoutée dans la glibc 2.14.

STANDARDS

       sync() : POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.

       syncfs() est spécifique à Linux.

NOTES

       Depuis la glibc 2.2.2, le prototype sous Linux de sync() est celui indiqué plus  haut,  ce
       qui  correspond à diverses normes. Dans glibc jusqu'à 2.2.1 c'était « int sync(void) », et
       sync() renvoyait toujours 0.

       D'après les normes (par exemple POSIX.1-2001) sync() ne fait que planifier les  écritures,
       il  peut donc renvoyer avant que la véritable écriture ne soit effectuée. Cependant, Linux
       attend la fin de l'écriture et sync() et syncfs() fournissent donc les même garanties  que
       fsync() sur chaque fichier du système ou du système de fichiers respectivement.

       Dans  les  versions  principales  du  noyau avant Linux 5.8, syncfs() n'échouera que si un
       mauvais descripteur de fichier est fourni (EBADF).  Depuis  Linux 5.8,  syncfs()  renverra
       aussi  une  erreur  si  un inœud ou plus a échoué à être réécrit depuis le dernier appel à
       syncfs().

BOGUES

       Avant Linux 1.3.20, Linux n'attendait pas la fin de l'écriture.

VOIR AUSSI

       sync(1), fdatasync(2), fsync(2)

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>,   Thomas   Vincent
       <tvincent@debian.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⟩.