Provided by: manpages-it-dev_4.27.0-1_all bug

NOME

       sync, syncfs - svuota la cache del filesystem sul disco

LIBRERIA

       Libreria C standard (libc, -lc)

SINTASSI

       #include <unistd.h>

       void sync(void);

       int syncfs(int fd);

   Macro per test di funzionalità per glibc (vedere feature_test_macros(7)):

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

       syncfs():
           _GNU_SOURCE

DESCRIZIONE

       sync()  provoca  la scrittura nei filesystem sottostanti di tutte le modifiche in sospeso ai metadati del
       file system e ai dati dei file memorizzati nella cache.

       syncfs() è come sync(), ma sincronizza solo il filesystem contenente  il  file  a  cui  si  riferisce  il
       descrittore di file aperto fd.

VALORE RESTITUITO

       syncfs() ritorna 0 in caso di successo; in caso di errore, ritorna -1 e imposta errno in modo che indichi
       l'errore.

ERRORI

       sync() termina sempre con successo.

       syncfs() può fallire per almeno il motivo seguente:

       EBADF  fd non è un descrittore di file valido.

       EIO    Si  è verificato un errore durante la sincronizzazione. Quest'errore può riguardare i dati scritti
              su qualsiasi file sul filesystem, o su metadati relativi al filesystem stesso.

       ENOSPC Lo spazio su disco è stato esaurito nel corso della sincronizzazione.

       ENOSPC
       EDQUOT I dati sono stati scritti in un file su NFS o su un altro filesystem  che  non  alloca  spazio  al
              momento  di  una  chiamata  di sistema a write(2), e alcune scritture precedenti non sono andate a
              buon fine per mancanza di spazio di archiviazione.

VERSIONI

       Secondo le specifiche degli standard (per esempio,  POSIX.1-2001),  sync()  pianifica  le  scritture,  ma
       potrebbe  ritornare  prima  che  la  scrittura  sia stata realmente effettuata. Comunque Linux attende il
       completamento degli I/O, e quindi sync() o syncfs() offrono la stessa garanzia  di  fsync()  chiamato  su
       ogni file rispettivamente del sistema o del file system.

CONFORME A

       sync() POSIX.1-2008.

       syncfs()
              Linux.

STORIA

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

       syncfs()
              Linux 2.6.39, glibc 2.14.

       A  partire  da glibc 2.2.2 il prototipo Linux per sync() è come elencato sopra, seguendo i vari standard.
       In libc4, libc5, e glibc 2.2.1 e precedenti era "int sync(void)", e sync() restituiva sempre 0.

       Nelle versioni del kernel precedenti a Linux 5.8, syncfs()  fallisce  solo  quando  alla  funzione  viene
       passato  un  descrittore  di  file non valido (EBADF). A partire da Linux 5.8, syncfs() riporta un errore
       anche se non è stato possibile riscrivere uno o più inode dall'ultima chiamata a syncfs().

BUG

       Prima di Linux 1.3.20, Linux non aspettava il completamento degli I/O prima di ritornare.

VEDERE ANCHE

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

TRADUZIONE

       La  traduzione  italiana  di  questa  pagina  di  manuale  è  stata   creata   da   Goffredo   Baroncelli
       <kreijack@usa.net>,  Giulio  Daprelà  <giulio@pluto.it>,  Elisabetta  Galli  <lab@kkk.it>,  Marco Curreli
       <marcocurreli@tiscali.it> e Giuseppe Sacco <eppesuig@debian.org>

       Questa traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o  successiva
       per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.

       Per  segnalare  errori  nella  traduzione  di  questa  pagina  di  manuale  inviare un messaggio a pluto-
       ildp@lists.pluto.it.

Linux man-pages 6.9.1                             2 maggio 2024                                          sync(2)