.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992 .\" and Copyright (c) 2011 Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" Modified by Michael Haardt .\" Modified Sat Jul 24 12:02:47 1993 by Rik Faith .\" Modified 15 Apr 1995 by Michael Chastain : .\" Added reference to `bdflush(2)'. .\" Modified 960414 by Andries Brouwer : .\" Added the fact that since 1.3.20 sync actually waits. .\" Modified Tue Oct 22 22:27:07 1996 by Eric S. Raymond .\" Modified 2001-10-10 by aeb, following Michael Kerrisk. .\" 2011-09-07, mtk, Added syncfs() documentation, .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH sync 2 "2 мая 2024 г." "Справочные страницы Linux 6.9.1" .SH НАИМЕНОВАНИЕ sync, syncfs \- записывает кэши файловых систем на диск .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP, \fI\-lc\fP) .SH ОБЗОР .nf \fB#include \fP .P \fBvoid sync(void);\fP .P \fBint syncfs(int \fP\fIfd\fP\fB);\fP .fi .P .RS -4 Требования макроса тестирования свойств для glibc (см. \fBfeature_test_macros\fP(7)): .RE .P \fBsync\fP(): .nf .\" || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED _XOPEN_SOURCE >= 500 || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE .fi .P \fBsyncfs\fP(): .nf _GNU_SOURCE .fi .SH ОПИСАНИЕ Вызов \fBsync\fP() приводит к записи в файловую систему всех отложенных изменений метаданных файловой системы и кэшированных файловых данных. .P Вызов \fBsyncfs\fP() подобен \fBsync\fP(), но синхронизирует только файловую систему, содержащую файл, на который указывает открытый файловый дескриптор \fIfd\fP. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" При нормальном завершении работы \fBsyncfs\fP() возвращает 0. В случае ошибки возвращается \-1, а \fIerrno\fP устанавливается в соответствующее значение. .SH ОШИБКИ Вызов \fBsync\fP() всегда выполняется без ошибок. .P Вызов \fBsyncfs\fP() может завершиться с ошибкой, по крайней мере, по следующей причине: .TP \fBEBADF\fP Значение \fIfd\fP не является правильным файловым дескриптором. .TP \fBEIO\fP An error occurred during synchronization. This error may relate to data written to any file on the filesystem, or on metadata related to the filesystem itself. .TP \fBENOSPC\fP При синхронизации закончилось дисковое пространство. .TP \fBENOSPC\fP .TQ \fBEDQUOT\fP Data was written to a file on NFS or another filesystem which does not allocate space at the time of a \fBwrite\fP(2) system call, and some previous write failed due to insufficient storage space. .SH ВЕРСИИ В соответствии со стандартной спецификацией (например POSIX.1\-2001), \fBsync\fP() только планирует запись, и может закончить работу до того как запись будет на самом деле произведена. Однако в Linux выполняется ожидание завершения операций ввода\-вывода и поэтому \fBsync\fP() или \fBsyncfs\fP() предоставляют такие же гарантии как \fBfsync\fP() при вызове для каждого файла в системе или файловой системы, соответственно. .SH СТАНДАРТЫ .TP \fBsync\fP() POSIX.1\-2008. .TP \fBsyncfs\fP() Linux. .SH ИСТОРИЯ .TP \fBsync\fP() POSIX.1\-2001, SVr4, 4.3BSD. .TP \fBsyncfs\fP() Linux 2.6.39, glibc 2.14. .P Начиная с glibc 2.2.2 Linux\-прототип \fBsync\fP() стал соответствовать различным стандартам. В glibc 2.21 и старее он объявлялся как «int sync(void)» и вызов \fBsync\fP() всегда возвращал 0. .P .\" commit 735e4ae5ba28c886d249ad04d3c8cc097dad6336 In mainline kernel versions prior to Linux 5.8, \fBsyncfs\fP() will fail only when passed a bad file descriptor (\fBEBADF\fP). Since Linux 5.8, \fBsyncfs\fP() will also report an error if one or more inodes failed to be written back since the last \fBsyncfs\fP() call. .SH ОШИБКИ Before Linux 1.3.20, Linux did not wait for I/O to complete before returning. .SH "СМОТРИТЕ ТАКЖЕ" \fBsync\fP(1), \fBfdatasync\fP(2), \fBfsync\fP(2) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) Alexander Golubev , Azamat Hackimov , Hotellook, Nikita , Spiros Georgaras , Vladislav , Yuri Kozlov , Иван Павлов и Kirill Rekhov . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT списка рассылки русских переводчиков .ME .