Provided by: manpages-pt-dev_20040726-2_all bug

NOME

       fdatasync - sincroniza os dados de um arquivo com aquele no disco

SINOPSE

       #include <unistd.h>

       #ifdef _POSIX_SYNCHRONIZED_IO

       int fdatasync(int fd);

       #endif

DESCRIÇÃO

       fdatasync  esvazia todos do buffers de dados de um arquivo para o disco
       (antes do retorno da chamada de sistema). Ele lembra fsync  mas  não  é
       requerido  para  atualizar  os  metadados  como  por exemplo o tempo de
       acesso.

       Aplicações que acessam base da dados or arquivos de  log  frequentemtne
       escrevem  pequeno  fragmento  de  dados  (por  exemplo, uma linha em um
       arquivo de log) e então chama fsync imediatamente para assegurar que os
       dados   escritos   são   fisicamente   armazenados   no  disco  rígido.
       Desafortunadamente, fsync irá sempre iniciar duas operações de escrita:
       uma  para  a recente escrita de dados e outra para atualizar o tempo de
       modificação armazenado no inode. Se o tempo de modificação  não  é  uma
       parte  da  transação o conceito de fdatasync pode ser usado para evitar
       inodes desnecessários em operações de escrita no disco.

VALORES RETORNADOS

       Em caso de sucesso, zero é retornado. Caso contrário, -1 é retornado, e
       errno é selecionado adequadamente.

ERROS

       EBADF  fd não é um descritor de arquivos aberto para escrita.

       EROFS, EINVAL
              fd  é  confinado  para  um  arquivo  especial o qual não suporta
              sincronização.

       EIO    Um erro ocorreu durante a sincronização.

PROBLEMAS

       Atualmente (Linux 2.0.23) fdatasync é equivalente a fsync.

DE ACORDO COM

       POSIX1b (anteriormente POSIX.4)

VEJA TAMBÉM

       fsync(2), B.O. Gallmeister, POSIX.4, O’Reilly, pp. 220-223 and 343.

TRADUZIDO POR LDP-BR em 21/08/2000.

       André   L.   Fassone    Canova    <lonelywolf@blv.com.br>    (tradução)
       xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx> (revisão)