Ln (Unix)
Nei sistemi operativi Unix e Unix-like, ln è un comando che crea collegamenti simbolici e collegamenti fisici a file e directory. Se non diversamente specificato, crea collegamenti fisici.
Uso
La sintassi generale di ln è la seguente:
ln [opzioni] sorgente1 [sorgente2..] destinazione
I parametri sorgente indicano i file e/o le directory esistenti verso cui creare il collegamento. Se viene specificato un solo parametro sorgente, il parametro destinazione indica il nome del collegamento.
Se vengono specificati più parametri sorgente, il parametro destinazione deve necessariamente essere una directory esistente, o al più un collegamento simbolico ad una directory.
Tra le opzioni principali troviamo:
- -s – Crea collegamenti simbolici invece di collegamenti fisici.
- -f – Nel caso non sia possibile creare il collegamento poiché esiste già un file con lo stesso nome, tenta di levarlo di mezzo rimuovendolo.
Collegamenti fisici a directory
Alcuni sistemi, tra cui GNU/Linux, vietano espressamente la creazione di collegamenti fisici a directory per motivi di sicurezza: potendoli creare è infatti possibile ottenere gerarchie nel file system che si autoincludono, e che possono quindi portare i programmi che esaminano il file system ricorsivamente (come ad esempio quelli che effettuano il backup) a discendere all'infinito nella alberatura, di fatto impedendone l'utilizzo.
Altri sistemi permettono questa operazione solo al superuser (root).
Voci correlate
Collegamenti esterni
- (EN) ln, in The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition. URL consultato il 25-05-2008.
- (EN) ln: Make links between files, in GNU Coreutils manual. URL consultato il 25-08-2008.