Man page - sync(2)

Packages contains this manual

Available languages:

en fr it pl nl ja ru ro de

Manual

sync

NAZWA
BIBLIOTEKA
SKŁADNIA
OPIS
WARTOŚĆ ZWRACANA
BŁĘDY
WERSJE
STANDARDY
HISTORIA
USTERKI
ZOBACZ TAKŻE
TŁUMACZENIE

NAZWA

sync, syncfs - zrzuca bufory systemu pliku na dysk

BIBLIOTEKA

Standardowa biblioteka C ( libc , -lc )

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
|| /* 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 ustawia errno , wskazując błąd.

BŁĘDY

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

syncfs () może się nie powieść co najmniej z poniższych powodów:

EBADF

fd nie jest prawidłowym deskryptorem pliku.

EIO

Wystąpił błąd podczas synchronizacji. Błąd może odnosić się do danych zapisywanych do jakiegoś pliku w systemie plików albo do metadanych powiązanych z samym systemem plików.

ENOSPC

Wyczerpano miejsce na dysku podczas synchronizacji.

ENOSPC

EDQUOT

Dane zapisano do pliku na NFS lub na innym systemie plików, który nie przydziela miejsca w momencie wywołania systemowego write (2) i któryś z poprzednich zapisów nie powiódł się ze względu na brak miejsca na dysku.

WERSJE

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.

STANDARDY

sync ()

POSIX.1-2008.

syncfs ()

Linux.

HISTORIA

sync ()

POSIX.1-2001, SVr4, 4.3BSD.

syncfs ()

Linux 2.6.39, glibc 2.14.

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.

W głównej gałęzi jądra, w wersjach wcześniejszych niż Linux 5.8, syncfs () zawodziło tylko, gdy podano nieprawidłowy deskryptor pliku ( EBADF ). Od Linuksa 5.8, syncfs () zgłosi błąd również wówczas, gdy nie uda się zapisać jednego lub więcej i-węzłów, od ostatniego wywołania syncfs ().

USTERKI

Przed Linuksem 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)

TŁUMACZENIE

Tłumaczenie niniejszej strony podręcznika: Przemek Borys <pborys@dione.ids.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net .