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

NAZWA

       sync, syncfs - zrzucenie buforów systemów plików na dysk

SKŁADNIA

       #include <unistd.h>

       void sync(void);

       int syncfs(int fd);

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       sync():
           _XOPEN_SOURCE >= 500
               || /* Od glibc 2.19: */ _DEFAULT_SOURCE
               || /* Wersje glibc <= 2.19: */ _BSD_SOURCE

       syncfs():
           _GNU_SOURCE

OPIS

       sync()  wymusza  fizyczne zapisanie w systemach plików wszystkich oczekujących modyfikacji
       metadanych systemów plików i zbuforowanych danych plików.

       syncfs()  jest podobny do sync(), ale synchronizuje tylko system plików zawierający  plik,
       do którego odnosi się otwarty deskryptor pliku fd.

WARTOŚĆ ZWRACANA

       Po  pomyślnym zakończeniu syncfs() zwraca zero, po błędzie zwraca -1 i odpowiednio ustawia
       errno, wskazując na rodzaj błędu.

BŁĘDY

       sync() zawsze kończy się pomyślnie.

       syncfs() może się nie powieść co najmniej z tego powodu:

       EBADF  fd nie jest prawidłowym deskryptorem pliku.

WERSJE

       syncfs() pojawił się w Linuksie 2.6.39; wsparcie biblioteczne zostało dodane w wersji 2.14
       biblioteki glibc.

ZGODNE Z

       sync(): POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.

       syncfs() jest specyficzne dla Linuksa.

UWAGI

       Począwszy od glibc 2.2.2 prototyp wywołania sync() w Linuksie wygląda jak powyżej, zgodnie
       z różnymi standardami. W wersji 2.2.1 i  wcześniejszych  biblioteki  glibc  było  to  "int
       sync(void)", a sync() zawsze zwracało 0.

       Zgodnie  ze  standardowymi  wskazaniami  (np. POSIX.1-2001), sync() szereguje zapisy, lecz
       może powrócić przed dokonaniem fizycznego zapisu.  Mimo  to  Linux  czeka  na  zakończenie
       operacji  wejścia/wyjścia  i  dlatego  sync()   lub  syncfs()  dają  te same gwarancje, co
       wywołanie fsync(2) na każdym pliku w systemie lub odpowiednio w systemie plików.

BŁĘDY

       Przed wersją 1.3.20  Linux  nie  czekał  na  zakończenie  operacji  wejścia/wyjścia  przed
       powróceniem z tego wywołania systemowego.

ZOBACZ TAKŻE

       sync(1), fdatasync(2), fsync(2)

O STRONIE

       Angielska  wersja  tej  strony  pochodzi  z  wydania  4.07  projektu Linux man-pages. Opis
       projektu, informacje dotyczące zgłaszania błędów można  oraz  najnowszą  wersję  oryginału
       można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

       Autorami  polskiego  tłumaczenia niniejszej strony podręcznika man są: Przemek Borys (PTM)
       <pborys@dione.ids.pl>, Andrzej M. Krzysztofowicz (PTM) <ankry@green.mf.pg.gda.pl> i Robert
       Luberda <robert@debian.org>.

       Polskie  tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na
       stronie  http://sourceforge.net/projects/manpages-pl/.  Jest   zgodne   z   wersją    4.07
       oryginału.