Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages

RedHat 9 (Linux i386) - man page for fsync (redhat section 2)

FSYNC(2)			    Linux Programmer's Manual				 FSYNC(2)

NAME
       fsync, fdatasync - synchronize a file's complete in-core state with that on disk

SYNOPSIS
       #include <unistd.h>

       int fsync(int fd);

       int fdatasync(int fd);

DESCRIPTION
       fsync  copies all in-core parts of a file to disk, and waits until the device reports that
       all parts are on stable storage.  It also updates metadata stat information. It	does  not
       necessarily  ensure  that  the entry in the directory containing the file has also reached
       disk.  For that an explicit fsync on the file descriptor of the directory is also needed.

       fdatasync does the same as fsync but only flushes user data, not the meta  data	like  the
       mtime or atime.

RETURN VALUE
       On success, zero is returned.  On error, -1 is returned, and errno is set appropriately.

ERRORS
       EBADF  fd is not a valid file descriptor open for writing.

       EROFS, EINVAL
	      fd is bound to a special file which does not support synchronization.

       EIO    An error occurred during synchronization.

NOTES
       In  case  the  hard  disk has write cache enabled, the data may not really be on permanent
       storage when fsync/fdatasync return.

       When an ext2 file system is mounted with the  sync  option,  directory  entries	are  also
       implicitly synced by fsync.

       On  kernels before 2.4, fsync on big files can be inefficient.  An alternative might be to
       use the O_SYNC flag to open(2).

CONFORMING TO
       POSIX.1b (formerly POSIX.4)

SEE ALSO
       bdflush(2), open(2), sync(2), mount(8), update(8), sync(8)

Linux 1.3.85				    2001-04-18					 FSYNC(2)


All times are GMT -4. The time now is 12:37 PM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
UNIX.COM Login
Username:
Password:  
Show Password