Provided by: manpages-it-dev_4.13-4_all 

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 versioni <= 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.10 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 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 13 agosto 2020 SYNC(2)