Provided by: manpages-pl-dev_0.5-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/.