Scroll to navigation

sync(2) System Calls Manual sync(2)

NAAM

sync, syncfs - schrijf de bestandssysteem buffer naar schijf

BIBLIOTHEEK

Standard C bibliotheek (libc, -lc)

SAMENVATTING

#include <unistd.h>
void sync(void);
int syncfs(int bb);

Feature Test Macro´s eisen in glibc (zie feature_test_macros(7)):

sync():


_XOPEN_SOURCE >= 500
|| /* Since glibc 2.19: */ _DEFAULT_SOURCE
|| /* Glibc <= 2.19: */ _BSD_SOURCE

syncfs():


_GNU_SOURCE

BESCHRIJVING

sync() zorgt ervoor dat aangebrachte modificaties aan de bestandssysteem metadata en gebufferde bestand data geschreven worden naar het onderliggende bestandssysteem

syncfs() is als sync(), maar synchroniseert alleen het bestandssysteem dat het bestand aangewezen door de open bestandsbeschrijving bb bevat.

EIND WAARDE

Bij succes geeft syncfs() nul terug. Bij falen wordt -1 teruggegeven en wordt errno naar behoren gezet.

FOUTEN

sync() slaagd altijd.

syncfs() kan falen door minstens een van de volgende redenen:

bb is geen geldige bestandsbeschrijving.
Een fout opgetreden tijdens de synchronisatie. Deze fout kan betrekking hebben op de data geschreven naar elk bestand op het bestandssysteem, of op metadata gerelateerd aan het bestandssysteem zelf.
De schijfruimte raakte uitgeput tijdens het synchroniseren.
Data werd geschreven naar een bestand op een NFS of een ander bestandssysteem dat geen ruimte reserveerde op het tijdstip van de write(2) systeem aanroep, en een vorige schrijfactie faalde vanwege niet voldoende opslag ruimte.

VERSIES

syncfs() verscheen voor het eerst in Linux 2.6.39; bibliotheek ondersteuning werd toegevoegd aan glibc 2.14.

VOLDOET AAN

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

syncfs() is Linux-eigen.

OPMERKINGEN

Vanaf glibc 2.2.2, is het Linux prototype voor sync() zoals hierboven getoond, daarbij de diverse standaarden volgend. In glibc 2.2.1 en eerder, was het "int sync(void)" en gaf sync() altijd 0 terug.

Volgens de standaard specificatie (e.g. POSIX.1-2001) plant sync() de schrijfacties, maar mag terugkeren voordat de echte schrijfacties wordt uitgevoerd. Echter wacht Linux op voltooiing van Invoer/Uitvoer en daarom geven sync() en syncfs() dezelfde garanties als het aanroepen van fsync() op elk bestand in het respectievelijk systeem of bestandssysteem.

In de hoofd kernel versies voor Linux 5.8, zal syncfs() alleen falen als die een verkeerde bestand beschrijving (EBADF krijgt. Vanaf Linux 5.8, zal syncfs() ook een fout geven als een of meer inodes faalden om geschreven te worden sinds de laatste syncfs() aanroep.

BUGS

Voor Linux 1.3.20 wachtte Linux niet op voltooiing van de Invoer/Uitvoer voor terugkeer.

ZIE OOK

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

VERTALING

De Nederlandse vertaling van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Mario Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>

Deze vertaling is vrije documentatie; lees de GNU General Public License Version 3 of later over de Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.

Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-dutch@lists.debian.org.

5 februari 2023 Linux man-pagina's 6.03