Provided by: manpages-es_1.55-10_all bug

NOMBRE

       unlink  -  borra  un  nombre  y  posiblemente  el  fichero  al que hace
       referencia

SINOPSIS

       #include <unistd.h>

       int unlink(const char *pathname);

DESCRIPCI'ON

       unlink borra un nombre del sistema de ficheros. Si dicho nombre era  el
       ultimo  enlace a un fichero, y ningun proceso tiene el fichero abierto,
       el fichero  es  borrado  y  el  espacio  que  ocupaba  vuelve  a  estar
       disponible.

       Si  el  nombre  era  el  ultimo enlace a un fichero, pero algun proceso
       sigue teniendo el fichero abierto, el fichero seguira existiendo  hasta
       que el ultimo descriptor de fichero referente a el sea cerrado.

       Si  el  nombre  hacia  referencia  a  un enlace simbolico, el enlace es
       eliminado.

       Si el nombre hacia referencia a  un  socket,  fifo  o  dispositivo,  el
       nombre  es  eliminado,  pero  los procesos que tengan el objeto abierto
       pueden continuar usandolo.

VALOR DEVUELTO

       En caso de exito, se devuelve cero. En caso de  error,  se devuelve  -1
       y se establece el errno apropiado.

ERRORES

       EACCES No  se  otorga permiso de escritura para el directorio contenido
              en pathname al identificador de usuario efectivo del proceso,  o
              uno  de  los  directorios  de  pathname no permite busquedas (no
              tiene permiso de ejecucion).

       EPERM o EACCES
              El directorio contenido en pathname tiene puesto  el  sticky-bit
              (S_ISVTX), y el identificador de usuario efectivo del proceso no
              es el identificador de usuario del fichero a borrar  ni  el  del
              directorio que lo contiene.

       EPERM (solo para Linux)
              El sistema de ficheros no permite el borrado de ficheros.

       EPERM  El sistema no permite el borrado de directorios, o el borrado de
              directorios requiere privilegios que el proceso actual no tiene.
              (Esta es el codigo de error recomendado por POSIX.)

       EISDIR pathname  hace referencia a un directorio.  (Este es el valor no
              conforme con POSIX devuelto por Linux desde la version 2.1.132.)

       EBUSY (no en Linux)
              El fichero pathname no puede  ser  borrado  porque  esta  siendo
              usado  por  el  sistema  o  por otro proceso y la implementacion
              considera esto un error.

       EFAULT pathname apunta fuera del espacio de direcciones accesible.

       ENAMETOOLONG
              pathname es demasiado largo.

       ENOENT Un elemento en pathname no  existe  o  es  un  enlace  simbolico
              colgado, o pathname esta vacio.

       ENOTDIR
              Un  elemento usado como directorio en pathname no es en realidad
              un directorio.

       ENOMEM No hay suficiente memoria disponible en el nucleo.

       EROFS  pathname hace referencia a un fichero de un sistema de  ficheros
              de solo lectura.

       ELOOP  Se   encontraron   demasiados  enlaces  simbolicos  al  traducir
              pathname.

       EIO    Ocurrio un error de E/S.

CONFORME A

       SVr4, SVID, POSIX, X/OPEN, 4.3BSD.  SVr4 documenta las  condiciones  de
       error adicionales EINTR, EMULTIHOP, ETXTBSY, ENOLINK.

FALLOS

       Algunos  hechos  desafortunados  en  el  protocolo NFS pueden causar la
       desaparicion inesperada de ficheros que siguen en uso.

V'EASE TAMBI'EN

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