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

Linux 2.0.30                                       21/08/1997                                          UNLINK(2)