SYMLINK(2)         Manuel du programmeur Linux         SYMLINK(2)


NOM
       symlink - Créer un nouveau nom pour un fichier.

SYNOPSIS
       #include <unistd.h>

       int symlink(const char *oldpath, const char *newpath);

DESCRIPTION
       symlink  crée  un lien symbolique nommé oldpath qui pointe
       sur newpath.

       Les liens sont interprétés à l'exécution, comme si le con­
       tenu  du  lien  était  remplacé par le chemin d'accès pour
       trouver un fichier ou un répertoire.

       Les liens symboliques peuvent contenir les composants . et
       ..   pour  le chemin, qui (s'ils sont utilisés au début du
       lien) se réfèrent au répertoire où le lien réside et à son
       répertoire parent.

       Un  lien  symbolique  (aussi nomme soft link) peut pointer
       vers un fichier existant ou sur un fichier non-existant.

       Les permissions d'accès à un  lien  symbolique  sont  sans
       importance,  le  propriétaire est ignoré lorsque l'on suit
       le lien, il n'est vérifié que pour supprimer  ou  renommer
       le  lien  si celui ci se trouve dans un répertoire avec le
       Sticky-Bit positionné.

       Si newpath existe il ne sera pas écrasé.

VALEUR RENVOYÉE
       symlink renvoie zéro s'il réussit ou -1 s'il échoue auquel
       cas errno contient le code d'erreur.

ERREURS
       EPERM   le système de fichier contenant pathname ne permet
               pas la création de liens symboliques.

       EFAULT  oldpath ou newpath pointent en dehors de  l'espace
               d'adressage accessible.

       EACCES  L'écriture  dans  le répertoire newpath est inter­
               dite pour l'UID effectif du processus, ou l'un des
               répertoire   composant   newpath   ne  permet  pas
               l'exécution.

       ENAMETOOLONG
               oldpath ou newpath est trop long.

       ENOENT  Un répertoire dans le chemin newpath n'existe  pas
               ou  est un lien symbolique pointant nulle part. Ou
               encore oldpath est une chaîne vide.



Linux 2.0                12 Décembre 1998                       1





SYMLINK(2)         Manuel du programmeur Linux         SYMLINK(2)


       ENOTDIR Un composant du chemin d'accès newpath  n'est  pas
               un répertoire.

       ENOMEM  Pas assez de mémoire pour le noyau.

       EROFS   Le  fichier est sur un système de fichiers en lec­
               ture seule.

       EEXIST  newpath existe déjà.

       ELOOP   newpath  contient  une  référence  circulaire   (à
               travers un lien symbolique).

       ENOSPC  Le  périphérique  n'a plus assez de place pour une
               entrée de répertoire.

       EIO     Une erreur d'entrée/sortie bas-niveau  s'est  pro­
               duite.

NOTES
       Il n'y a pas de vérification de oldpath.

       Effacer  le  nom  référençant  un lien symbolique effacera
       effectivement le fichier (à moins qu'il ait d'autres liens
       matériels).  Si  ce comportement est indésirable, utiliser
       link.

CONFORMITÉ
       SVr4, SVID, POSIX,  BSD  4.3.  SVr4  mentionne  des  codes
       d'erreur supplémentaires EDQUOT, et ENOSYS.

BUGS
       Voir  open(2)  concernant  les  multiples fichiers avec le
       même nom, et NFS.

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


TRADUCTION
       Christophe Blaess, 1997.















Linux 2.0                12 Décembre 1998                       2