SYMLINK

Section: Linux Programmer's Manual (2)
Updated: 26 luglio 2007
Index Return to Main Contents
 

NOME

symlink - crea un nuovo nome per un file  

SINTASSI

#include <unistd.h>

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

Test delle funzioni e requisiti delle macro per glibc (vedere feature_test_macros(7)):

symlink(): _BSD_SOURCE || _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L  

DESCRIZIONE

symlink() crea un collegamento simbolico con nome newpath che contiene la stringa oldpath.

I collegamenti simbolici sono interpretati all'esecuzione come se il contenuto del collegamento fosse stato sostituito nel percorso seguito per trovare un file o una directory.

Un collegamento simbolico può contenere .. come componente del percorso, che (se usato all'inizio del collegamento) fa riferimento alle directory superiori a quella nella quale risiede il collegamento.

Un collegamento simbolico (conosciuto anche come soft link) può puntare ad un file esistente o non esistente: in tal caso è detto dangling link.

I permessi di un collegamento simbolico sono irrilevanti. Quando si segue il collegamento il proprietario viene ignorato: viene invece verificato quando si richiede la rimozione o la rinomina del collegamento che si trovi in una directory con lo sticky bit (S_ISVTX) impostato.

Se newpath esiste non sarà sovrascritto.  

VALORE RESTITUITO

In caso di successo viene restituito zero, altrimenti -1 e errno verrà impostato di conseguenza.  

ERRORI

EACCES
Non è possibile l'accesso in scrittura alla directory contenente newpath , o una delle directory contenute nel prefisso del percorso di newpath non ha il permesso di ricerca. (Vedere anche path_resolution(7).)
EEXIST
newpath esiste già.
EFAULT
oldpath o newpath puntano fuori dallo spazio di indirizzamento accessibile.
EIO
E' avvenuto un errore di I/O.
ELOOP
Si sono incontrati troppy collegamenti simbolici nella risoluzione di newpath.
ENAMETOOLONG
oldpath o newpath è troppo lungo.
ENOENT
Una directory contenuta in newpath non esiste o è un dangling link simbolico, o oldpath è una stringa vuota.
ENOMEM
Non c'è sufficente memoria per il kernel.
ENOSPC
Il dispositivo contenente il file non ha spazio per la nuova directory.
ENOTDIR
Un elemento usato come directory in newpath non è in effetti una directory.
EPERM
Il file system contenente newpath non supporta la creazione di collegamenti simbolici.
EROFS
newpath è contenuto in un file system in sola lettura.
 

CONFORME A

SVr4, 4.3BSD, POSIX.1-2001.  

NOTE

Non viene effetuato nessun controllo su oldpath.

La cancellazione del nome a cui fa riferimento un collegamento simbolico cancellerà il file (a meno che esso non abbia altri hard link). Se non si desidera questo comportamento usare link(2).  

VEDERE ANCHE

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

COLOPHON

Questa pagina fa parte del rilascio 2.80 del progetto man-pages di Linux. Si può trovare una descrizione del progetto, e informazioni su come riportare bachi, presso http://www.kernel.org/doc/man-pages/. Per la traduzione in italiano si può fare riferimento a http://www.pluto.it/ildp/collaborare/


 

Index

NOME
SINTASSI
DESCRIZIONE
VALORE RESTITUITO
ERRORI
CONFORME A
NOTE
VEDERE ANCHE
COLOPHON

This document was created by man2html, using the manual pages.
Time: 23:03:51 GMT, June 17, 2008