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

NOME

       unlink - apaga um nome e talvez o arquivo ao qual se refere

SINOPSE

       #include <unistd.h>

       int unlink(const char *pathname);

DESCRIÇÃO

       unlink  apaga um nome a partir do sistema de arquivos. Se aquele nome tem a última ligação
       simbólica para uma arquivo e não processa o arquivo aberto,  o  arquivo  é  deletado  e  o
       espaço dele é feito disponível para ser reutilizado.

       Se  o  nome  tem  uma  última  ligação para um arquivo mas qualquer processo tem o arquivo
       aberto o arquivo ficará existente até o último descritor de arquivo referenciado para  ele
       ser fechado.

       Se o nome referenciado para uma ligação simbólica é um ligação removida.

       Se  o nome referenciado para um socket, fifo ou dispositivo foi removido mas processos que
       têm o objeto aberto podem continuar usá-lo.

VALORES RETORNADOS

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

ERROS

       EACCES Acesso  de  escrita  para  o  diretório  contendo pathname não é permitido para uid
              efetivas de processos, ou um dos  diretórios  em  pathname  não  tem  permissão  de
              procura (execução).

       EPERM ou EACCES
              O  diretório  contendo  pathname tem um bit contrário selecionado (S_ISVTX) e a uid
              efetiva do processo é nenhuma uid do arquivo para ser apagado não naquele diretório
              que o contém.

       EPERM  O arquivo pathname é um diretório.

       EFAULT pathname aponta para fora do espaço de endereços acessível para você.

       ENAMETOOLONG
              pathname é muito longo.

       ENOENT Um diretório componente no pathname não existe ou é uma ligação simbólica rompida.

       ENOTDIR
              Um componente usado com um diretório em pathname não é, de fato, um diretório.

       EISDIR pathname refere-se a um diretório.

       ENOMEM Memória do kernel disponível é insuficiente.

       EROFS  pathname refere-se para um arquivo em um sistema de arquivos somente de leitura.

       ELOOP  Muitas ligações simbólicas são encontradas na tradução do pathname.

       EIO    Um erro de E/S ocorreu.

DE ACORDO COM

       SVr4,  SVID, POSIX, X/OPEN, 4.3BSD. SVr4 documenta as condições de erros adicionais EBUSY,
       EINTR, EMULTIHOP, ETXTBUSY, ENOLINK.

PROBLEMAS

       Infelicidades no protocolo base  do  NFS  pode  causar  o  inesperado  desaparecimento  de
       arquivos que ainda estão sendo usados.

VEJA TAMBÉM

       link(2), rename(2), open(2), rmdir(2), mknod(2), mkfifo(3), remove(3), rm(1)

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)