dwww Home | Manual pages | Find package

sync(2)                       System Calls Manual                      sync(2)

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 fi-
       chiers contenant le fichier référencé par le descripteur de fichier ou-
       vert 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  er-
              reur  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  bi-
       bliothè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 in-
       diqué plus haut, ce  qui  correspond  à  diverses  normes.  Dans  glibc
       jusqu'à 2.2.1  c'était  « int  sync(void) »,  et  sync() renvoyait tou-
       jours 0.

       D'après les normes (par exemple POSIX.1-2001) sync() ne fait que plani-
       fier  les écritures, il peut donc renvoyer avant que la véritable écri-
       ture 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 Chris-
       tophe Blaess <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <ste-
       phan.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.cou-
       lon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>,  Thomas  Huriaux
       <thomas.huriaux@gmail.com>,  Nicolas François <nicolas.francois@centra-
       liens.net>, Florentin Duneau <fduneau@gmail.com>, Simon  Paillard  <si-
       mon.paillard@resel.enst-bretagne.fr>,    Denis   Barbier   <barbier@de-
       bian.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⟩.

Pages du manuel de Linux 6.03   5 février 2023                         sync(2)

Generated by dwww version 1.15 on Sat Jun 29 01:52:49 CEST 2024.