table of contents
sync(2) | System Calls Manual | sync(2) |
NUME¶
sync, syncfs - transferă conținutul cache-urilor sistemului de fișiere pe disc
BIBLIOTECA¶
Biblioteca C standard (libc, -lc)
SINOPSIS¶
#include <unistd.h>
void sync(void);
int syncfs(int fd);
sync():
_XOPEN_SOURCE >= 500
|| /* Începând cu glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE
syncfs():
_GNU_SOURCE
DESCRIERE¶
sync() face ca toate modificările în așteptare ale metadatelor din sistemul de fișiere și ale datelor din fișierele cache să fie scrise în sistemele de fișiere subiacente.
syncfs() este ca și sync(), dar sincronizează doar sistemul de fișiere care conține fișierul la care se face referire prin descriptorul de fișier deschis fd.
VALOAREA RETURNATö
syncfs() returnează 0 în caz de succes; în caz de eroare, returnează -1 și configurează errno pentru a indica eroarea.
ERORI-IEȘIRE¶
sync() reușește întotdeauna.
syncfs() can fail for at least the following reasons:
- EBADF
- descriptor-fișier nu este un descriptor de fișier valid.
- EIO
- S-a produs o eroare în timpul sincronizării. Această eroare se poate referi la datele scrise în orice fișier din sistemul de fișiere sau la metadatele legate de sistemul de fișiere în sine.
- ENOSPC
- Spațiul pe disc a fost epuizat în timpul sincronizării.
- ENOSPC
- EDQUOT
- Datele au fost scrise într-un fișier pe NFS sau pe un alt sistem de fișiere care nu alocă spațiu în momentul unui apel de sistem write(2), iar o scriere anterioară a eșuat din cauza spațiului de stocare insuficient.
VERSIUNI¶
În conformitate cu specificațiile standard (de exemplu, POSIX.1-2001), sync() programează scrierile, dar poate returna înainte ca scrierea efectivă să fie efectuată. Cu toate acestea, Linux așteaptă finalizarea I/O și, prin urmare, sync() sau syncfs() oferă aceleași garanții ca fsync() apelat pe fiecare fișier din sistem sau, respectiv, sistem de fișiere.
STANDARDE¶
ISTORIC¶
Începând cu glibc 2.2.2.2, prototipul Linux pentru sync() este cel enumerat mai sus, în conformitate cu diversele standarde. În glibc 2.2.1 și anterior, era „int sync(void)”, iar sync() returna întotdeauna 0.
În versiunile de nucleu din linia principală de dezvoltare anterioare la Linux 5.8, syncfs() va eșua numai atunci când i se transmite un descriptor de fișier greșit (EBADF). Începând cu Linux 5.8, syncfs() va raporta, de asemenea, o eroare dacă unul sau mai multe noduri nu au reușit să fie rescrise de la ultimul apel syncfs().
ERORI¶
Înainte de Linux 1.3.20, Linux nu aștepta finalizarea In/Ieș înainte de a returna.
CONSULTAȚI ȘI¶
TRADUCERE¶
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
2 mai 2024 | Pagini de manual Linux (nepublicate) |