Un collegamento simbolico, noto anche come collegamento simbolico o collegamento software, è un tipo speciale di file che punta a un altro file o directory.
In questa guida illustreremo come utilizzare ln
comando per creare collegamenti simbolici.
Tipi di link #
Esistono due tipi di collegamenti nei sistemi Linux/UNIX:
- Collegamenti reali . Puoi pensare a un collegamento reale come un nome aggiuntivo per un file esistente. Gli hard link associano due o più nomi di file con lo stesso inode. È possibile creare uno o più collegamenti reali per un singolo file. Non è possibile creare collegamenti reali per directory e file su un filesystem o una partizione diversi.
- Link soft . Un collegamento software è qualcosa come un collegamento in Windows. È un puntatore indiretto a un file o una directory. A differenza di un collegamento fisico, un collegamento simbolico può puntare a un file oa una directory su un filesystem o una partizione diversi.
Come utilizzare ln
Comando #
ln
è un'utilità della riga di comando per la creazione di collegamenti tra file. Per impostazione predefinita, il ln
comando crea collegamenti reali. Per creare un collegamento simbolico, usa -s
(--symbolic
) opzione.
Il ln
la sintassi del comando per la creazione di collegamenti simbolici è la seguente:
ln -s [OPTIONS] FILE LINK
- Se entrambi i
FILE
eLINK
sono dati,ln
creerà un collegamento dal file specificato come primo argomento (FILE
) nel file specificato come secondo argomento (LINK
). - Se viene fornito un solo file come argomento o il secondo argomento è un punto (
.
),ln
creerà un collegamento a quel file nella directory di lavoro corrente. Il nome del collegamento simbolico sarà lo stesso del file a cui punta.
Per impostazione predefinita, in caso di successo, ln
non produce alcun output e restituisce zero.
Creazione di un collegamento simbolico a un file #
Per creare un collegamento simbolico a un determinato file, apri il tuo terminale e digita:
ln -s source_file symbolic_link
Sostituisci source_file
con il nome del file esistente per il quale vuoi creare il link simbolico e symbolic_link
con il nome del collegamento simbolico.
Il symbolic_link
il parametro è facoltativo. Se non specifichi il collegamento simbolico, il ln
comando creerà un nuovo collegamento nella directory corrente:
Nell'esempio seguente, stiamo creando un collegamento simbolico denominato my_link.txt
in un file denominato my_file.txt
:
ln -s my_file.txt my_link.txt
Per verificare che il collegamento simbolico sia stato creato correttamente, utilizzare ls
comando:
ls -l my_link.txt
L'output sarà simile a questo:
lrwxrwxrwx 1 linuxize users 4 Nov 2 23:03 my_link.txt -> my_file.txt
Il l
carattere è un flag del tipo di file che rappresenta un collegamento simbolico. Il ->
il simbolo mostra il file a cui punta il collegamento simbolico.
Creazione di collegamenti simbolici a una directory #
Il comando per creare un collegamento simbolico a una directory è lo stesso di quando si crea un collegamento simbolico a un file. Specificare il nome della directory come primo parametro e il collegamento simbolico come secondo parametro.
Ad esempio, se vuoi creare un collegamento simbolico da /mnt/my_drive/movies
directory nel ~/my_movies
directory che eseguiresti:
ln -s /mnt/my_drive/movies ~/my_movies
Sovrascrivere i collegamenti simbolici #
Se provi a creare un collegamento simbolico già esistente, ln
comando stamperà un messaggio di errore.
ln -s my_file.txt my_link.txt
ln: failed to create symbolic link 'my_link.txt': File exists
Per sovrascrivere il percorso di destinazione del collegamento simbolico, utilizzare il -f
(--force
) opzione.
ln -sf my_file.txt my_link.txt
Rimozione dei collegamenti simbolici #
Per eliminare/rimuovere i collegamenti simbolici, utilizzare unlink
o rm
comando.
La sintassi di unlink
è molto semplice:
unlink symlink_to_remove
Rimozione di un collegamento simbolico utilizzando rm
il comando è lo stesso di quando si rimuove un file:
rm symlink_to_remove
Indipendentemente dal comando utilizzato, quando si rimuove un collegamento simbolico non aggiungere il /
barra finale alla fine del nome.
Se elimini o sposti il file di origine in una posizione diversa, il file simbolico verrà lasciato penzolante (rotto) e dovrebbe essere rimosso.
Conclusione #
Per creare un collegamento simbolico su Linux usa ln
comando con -s
opzione.
Per ulteriori informazioni su ln
comando, visita la pagina di manuale di ln o digita man ln
nel tuo terminale.
Se hai domande o feedback, sentiti libero di lasciare un commento.