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

NOME

       sync, syncfs - svuota la cache del filesystem sul disco

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

       syncfs() è apparso per la prima volta in Linux 2.6.39; il supporto alla libreria  è  stato
       aggiunto a glibc nella versione version 2.14.

CONFORME A

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

       syncfs() è specifico di Linux.

NOTE

       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.

       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.

       Nelle  versioni  del  kernel  precedenti  alla  5.8,  syncfs()   fallisce solo quando alla
       funzione viene fornito come parametro 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 della versione 1.3.20 Linux non aspettava  il  completamento  degli  I/O,  prima  di
       ritornare.

VEDERE ANCHE

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

COLOPHON

       Questa pagina fa parte del rilascio 5.13 del progetto Linux man-pages. Una descrizione del
       progetto, le istruzioni per la segnalazione degli errori, e l'ultima  versione  di  questa
       pagina si trovano su https://www.kernel.org/doc/man-pages/.

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>  e
       Marco Curreli <marcocurreli@tiscali.it>

       Questa  traduzione è documentazione libera; leggere la GNU General Public License Versione
       3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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⟩.