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

NOMBRE

       symlink - construye un nombre nuevo para un fichero

SINOPSIS

       #include <unistd.h>

       int symlink(const char *caminoviejo, const char *caminonuevo);

DESCRIPCIÓN

       symlink  crea  un  enlace simbólico llamado caminonuevo que contiene la
       cadena de caracteres caminoviejo.

       A fin de encontrar un fichero o directorio, los enlaces  simbólicos  se
       interpretan  en  tiempo  de ejecución como si los contenidos del enlace
       hubiesen sido sustituidos en el camino que se esté siguiendo.

       Los enlaces simbólicos pueden contener como componentes del  camino  ..
       y, si se emplean al principio del enlace, se refieren a los directorios
       padre de aquél en el que reside el enlace.

       Un enlace simbólico (también conocido como enlace blando) puede apuntar
       a  un  fichero  existente o a uno que no existe; en este último caso se
       conoce como un enlace colgante.

       Los permisos de un enlace simbólico son irrelevantes; el propietario no
       se  tiene  en  cuenta  cuando  se sigue el enlace, pero sí se comprueba
       cuando se quiere borrar o  renombrar  el  enlace  y  éste  está  en  un
       directorio con el bit pegajoso (STIcky) activado.

       Si caminonuevo existe, no será sobreescrito.

VALOR DEVUELTO

       En  caso de éxito, se devuelve 0. En caso de error, se devuelve -1 y se
       pone en errno un valor apropiado.

ERRORES

       EPERM  El sistema de ficheros que contiene  caminonuevo  no  admite  la
              creación de enlaces simbólicos.

       EFAULT caminoviejo  o  caminonuevo  apuntan  afuera  de  su  espacio de
              direcciones accesible.

       EACCES No se permite acceso de escritura en el directorio que  contiene
              caminonuevo  para  el  UID  efectivo  del  proceso, o uno de los
              directorios de  caminonuevo  no  permite  búsqueda  (permiso  de
              ejecución, x).

       ENAMETOOLONG
              caminoviejo o caminonuevo eran muy largos.

       ENOENT Un componente directorio en caminonuevo no existe o es un enlace
              simbólico colgante, o caminoviejo es la cadena vacía.

       ENOTDIR
              Un componente usado como directorio en  caminonuevo  no  es,  de
              hecho, un directorio.

       ENOMEM No había bastante memoria del núcleo.

       EROFS  caminonuevo está en un sistema de ficheros de lectura exclusiva.

       EEXIST caminonuevo ya existe.

       ELOOP  Se  encontraron  demasiados  enlaces  simbólicos   al   resolver
              caminonuevo.

       ENOSPC El  dispositivo  que  contiene al fichero no tiene sitio para la
              nueva entrada de directorio.

       EIO    Se ha producido un error de E/S.

OBSERVACIONES

       No se hace ninguna comprobación sobre caminoviejo.

       Borrar el nombre referenciado por un enlace simbólico borrará realmente
       el  fichero  (a  menos que también tenga otros enlaces duros). Si no se
       desea este comportamiento, emplee link.

CONFORME A

       SVr4, SVID, POSIX, BSD 4.3, X/OPEN.   SVr4  documenta  los  códigos  de
       error adicionales EDQUOT y ENOSYS.

FALLOS

       Vea  open(2)  con  referencia  a varios ficheros con el mismo nombre, y
       NFS.

VÉASE TAMBIÉN

       readlink(2), link(2), unlink(2), rename(2), open(2), lstat(2), ln(1)