Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       sync, syncfs - записывает кэши файловых систем на диск

БИБЛИОТЕКА

       Стандартная библиотека языка C (libc, -lc)

ОБЗОР

       #include <unistd.h>

       void sync(void);

       int syncfs(int fd);

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       sync():
           _XOPEN_SOURCE >= 500
               || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE
               || /* glibc <= 2.19: */ _BSD_SOURCE

       syncfs():
           _GNU_SOURCE

ОПИСАНИЕ

       Вызов sync() приводит к записи в файловую систему всех отложенных изменений метаданных файловой системы и
       кэшированных файловых данных.

       Вызов  syncfs()  подобен  sync(),  но синхронизирует только файловую систему, содержащую файл, на который
       указывает открытый файловый дескриптор fd.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       При нормальном завершении работы syncfs()  возвращает  0.  В  случае  ошибки  возвращается  -1,  а  errno
       устанавливается в соответствующее значение.

ОШИБКИ

       Вызов sync() всегда выполняется без ошибок.

       Вызов syncfs() может завершиться с ошибкой, по крайней мере, по следующей причине:

       EBADF  Значение fd не является правильным файловым дескриптором.

       EIO    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.

       ENOSPC При синхронизации закончилось дисковое пространство.

       ENOSPC
       EDQUOT Data was written to a file on NFS or another filesystem which does not allocate space at the  time
              of a write(2)  system call, and some previous write failed due to insufficient storage space.

ВЕРСИИ

       В  соответствии  со  стандартной спецификацией (например POSIX.1-2001), sync() только планирует запись, и
       может закончить работу до того как запись будет на самом деле произведена.  Однако  в  Linux  выполняется
       ожидание  завершения  операций ввода-вывода и поэтому sync() или syncfs() предоставляют такие же гарантии
       как fsync() при вызове для каждого файла в системе или файловой системы, соответственно.

СТАНДАРТЫ

       sync() POSIX.1-2008.

       syncfs()
              Linux.

ИСТОРИЯ

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

       syncfs()
              Linux 2.6.39, glibc 2.14.

       Начиная с glibc 2.2.2 Linux-прототип sync() стал соответствовать различным стандартам.  В  glibc  2.21  и
       старее он объявлялся как «int sync(void)» и вызов sync() всегда возвращал 0.

       In  mainline  kernel  versions  prior  to  Linux  5.8,  syncfs()   will  fail only when passed a bad file
       descriptor (EBADF).  Since Linux 5.8, syncfs() will also report an error if one or more inodes failed  to
       be written back since the last syncfs()  call.

ОШИБКИ

       Before Linux 1.3.20, Linux did not wait for I/O to complete before returning.

СМОТРИТЕ ТАКЖЕ

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

ПЕРЕВОД

       Русский  перевод  этой  страницы  руководства разработал(и) Alexander Golubev <fatzer2@gmail.com>, Azamat
       Hackimov  <azamat.hackimov@gmail.com>,  Hotellook,   Nikita   <zxcvbnm3230@mail.ru>,   Spiros   Georgaras
       <sng@hellug.gr>,  Vladislav  <ivladislavefimov@gmail.com>,  Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов
       <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

       Этот перевод является свободной программной документацией; он распространяется на условиях  общедоступной
       лицензии  GNU  (GNU  General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите  об  этом
       разработчику(ам)   по   его(их)  адресу(ам)  электронной  почты  или  по  адресу  списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                          sync(2)