Provided by: manpages-pt-dev_20040726-4_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)