sync

NAME

sync - commit buffer cache to disk

SYNOPSIS

#include <unistd.h> void sync(void);

DESCRIPTION

R sync () first commits inodes to buffers, and then buffers to disk.

ERRORS

This function is always successful.

CONFORMING TO

SVr4, 4.3BSD, POSIX.1-2001.

NOTES

Since glibc 2.2.2 the Linux prototype is as listed above, following the various standards. In libc4, libc5, and glibc up to 2.2.1 it was "int sync(void)", and R sync () always returned 0.

BUGS

According to the standard specification (e.g., POSIX.1-2001), R sync () schedules the writes, but may return before the actual writing is done. However, since version 1.3.20 Linux does actually wait. (This still does not guarantee data integrity: modern disks have large caches.)

SEE ALSO

bdflush(2), fdatasync(2), fsync(2), sync(8), update(8)