Provided by: manpages-pl-dev_0.7-1_all bug

NAZWA

       fsync, fdatasync - synchronizacja pełnego wewnątrzrdzeniowego stanu pliku z zapisanym na dysku

SKŁADNIA

       #include <unistd.h>

       int fsync(int fd);

       int fdatasync(int fd);

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       fsync kopiuje wszystkie wewnątrzrdzeniowe części pliku na dysk i czeka na zgłoszenie przez urządzenie, że
       wszystkie  dane  znajdują  się  na  trwałym  nośniku.   Aktualizuje  również  informacje  statystyczne  o
       metadanych. Nie gwarantuje, że wpis w katalogu zawierający informacje o pliku również  zostanie  zapisany
       na dysku. Aby to osiągnąć, wymagane jest jawne wywołanie fsync dla deskryptora katalogu.

       fdatasync  robi  to  samo,  co  fsync, lecz zapisuje jedynie dane użytkownika, bez metadanych, takich jak
       mtime czy atime.

WARTOŚĆ ZWRACANA

       Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.

BŁĘDY

       EBADF  fd nie jest prawidłowym deskryptorem pliku otwartego do zapisu.

       EROFS, EINVAL
              fd jest powiązany ze specjalnym plikiem, który nie wspiera synchronizacji.

       EIO    Pojawił się błąd podczas synchronizacji.

UWAGI

       W sytuacji, gdy twardy dysk ma włączone buforowanie  zapisów,  dane  mogą  w  rzeczywistości  nie  zostać
       zapisane na trwałym nośniku do chwili powrotu z fsync/fdatasync.

       Gdy  system  plików  ext2  jest zamontowany z opcją sync, wpisy w katalogach są również jawnie zapisywane
       przez fsync.

       W kernelach przed 2.4, fsync na dużych plkach mogło  być  niewydajne.   Alternatywą  mogło  być  używanie
       znacznika O_SYNC dla open(2).

ZGODNE Z

       POSIX.1b (wcześniej POSIX.4)

ZOBACZ TAKŻE

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

INFORMACJE O TŁUMACZENIU

       Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
       W  razie  zauważenia  różnic  między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub
       funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:

              man --locale=C 2 fsync

       Prosimy  o  pomoc  w  aktualizacji  stron  man  -   więcej   informacji   można   znaleźć   pod   adresem
       http://sourceforge.net/projects/manpages-pl/.

Linux 1.3.85                                       2001-04-18                                           FSYNC(2)