Man page - symlink(2)

Packages contains this manual

Available languages:

en fr it pl nl ja ru de

Manual

symlink

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
symlinkat()
VALEUR RENVOYÉE
ERREURS
STANDARDS
HISTORIQUE
Notes de la glibc
NOTES
VOIR AUSSI
TRADUCTION

NOM

symlink, symlinkat - Créer un nouveau nom pour un fichier

BIBLIOTHÈQUE

BibliothĂšque C standard ( libc , -lc )

SYNOPSIS

#include <unistd.h>

int symlink(const char * target , const char * linkpath );

#include <fcntl.h> /* Définition des constantes AT_* */
#include <unistd.h>

int symlinkat(const char * target , int newdirfd , const char * linkpath );

Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros (7)) :

symlink () :
_XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L
|| /* glibc <= 2.19 : */ _BSD_SOURCE

symlinkat () :
Depuis la glibc 2.10 :
_POSIX_C_SOURCE >= 200809L
avant la glibc 2.10 :
_ATFILE_SOURCE

DESCRIPTION

symlink () crée un lien symbolique avec le nom linkpath indiqué, et qui pointe sur target .

Les liens sont interprĂ©tĂ©s Ă  l’exĂ©cution, comme si le contenu du lien Ă©tait remplacĂ© par le chemin d’accĂšs pour trouver un fichier ou un rĂ©pertoire.

Les liens symboliques peuvent contenir .. pour le chemin, qui (s’il est utilisĂ© au dĂ©but du lien) se rĂ©fĂšre aux rĂ©pertoires parents du lien.

Un lien symbolique (aussi nommé « 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 (sauf quand la fonction protected_symlinks est activĂ©, comme expliquĂ© dans proc (5)), 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 ( S_ISVTX ) positionnĂ©.

Si linkpath existe, il ne sera pas écrasé.

symlinkat()

L’appel systĂšme symlinkat () fonctionne exactement comme symlink (), les seules diffĂ©rences Ă©tant dĂ©crites ici.

Si linkpath est un chemin relatif, il est interprĂ©tĂ© relativement au rĂ©pertoire rĂ©fĂ©rencĂ© par le descripteur de fichier newdirfd (plutĂŽt que par rapport au rĂ©pertoire courant, comme c’est le cas avec symlink ()).

Si linkpath est relatif et si newdirfd a la valeur spéciale AT_FDCWD , alors linkpath est interprété relativement au répertoire de travail du processus appelant, comme pour symlink ().

Si linkpath est un chemin absolu, newdirfd est ignoré.

Consultez openat (2) pour une explication de la nécessité de symlinkat ().

VALEUR RENVOYÉE

En cas de succĂšs, zĂ©ro est renvoyĂ©. En cas d’erreur, -1 est renvoyĂ© et errno est dĂ©finie pour prĂ©ciser l’erreur.

ERREURS

EACCES

L’écriture dans le rĂ©pertoire contenant linkpath est interdite, ou l’un des rĂ©pertoires composant linkpath ne permet pas le parcours. (Consultez aussi path_resolution (7).)

EBADF

( symlinkat ()) linkpath est un chemin relatif, mais newdirfd n’est ni de valeur AT_FDCWD ni un descripteur de fichier valable.

EDQUOT

Le quota de ressources de l’utilisateur sur le systĂšme de fichiers a Ă©tĂ© atteint. Les ressources peuvent ĂȘtre des inƓuds ou des blocs de disque, suivant l’implĂ©mentation sur le systĂšme de fichiers.

EEXIST

linkpath existe déjà.

EFAULT

target ou linkpath pointent en dehors de l’espace d’adressage accessible.

EIO

Une erreur d’entrĂ©e-sortie s’est produite.

ELOOP

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

ENAMETOOLONG

target ou linkpath est trop long.

ENOENT

Un rĂ©pertoire dans le chemin linkpath n’existe pas ou est un lien symbolique pointant nulle part, ou encore target ou linkpath est une chaĂźne vide.

ENOENT

( symlinkat ()) linkpath est un chemin relatif, et le descripteur newdirfd est associé à un répertoire qui a été supprimé.

ENOMEM

La mĂ©moire disponible du noyau n’était pas suffisante.

ENOSPC

Le pĂ©riphĂ©rique contenant le fichier n’a pas de place pour une nouvelle entrĂ©e de rĂ©pertoire.

ENOTDIR

Un composant utilisĂ© comme un rĂ©pertoire dans le chemin linkpath n’est en fait pas un rĂ©pertoire.

ENOTDIR

( symlinkat ()) linkpath est un chemin relatif, et le descripteur newdirfd est associé à un fichier, pas à un répertoire.

EPERM

le systÚme de fichiers contenant linkpath ne permet pas la création de liens symboliques.

EROFS

Le chemin linkpath se trouve sur un systĂšme de fichiers en lecture seule.

STANDARDS

POSIX.1-2008.

HISTORIQUE

symlink ()

SVr4, 4.3BSD, POSIX.1-2001.

symlinkat ()

POSIX.1-2008. Linux 2.6.16, glibc 2.4.

Notes de la glibc

Dans les noyaux anciens oĂč symlinkat () n’est pas disponible, la fonction d’enveloppe de la glibc a recours Ă  l’utilisation de symlink (). Quand linkpath est un chemin relatif, la glibc construit un chemin basĂ© sur le lien symbolique dans /proc/self/fd qui correspond Ă  l’argument newdirfd .

NOTES

Il n’y a pas de vĂ©rification de l’existence de target .

Effacer le nom rĂ©fĂ©rencĂ© par un lien symbolique effacera effectivement le fichier (Ă  moins qu’il ait d’autres liens matĂ©riels). Si ce comportement est indĂ©sirable, utiliser link ().

VOIR AUSSI

ln (1), namei (1), lchown (2), link (2), lstat (2), open (2), readlink (2), rename (2), unlink (2), path_resolution (7), symlink (7)

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Frédéric Hantrais <fhantrais@gmail.com> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org .