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)