In ambiente *nix è una pratica semplice e comune quelle di reindirizzare una cartella o un file proprio utilizzando link simbolici.
La versione 5.0 del file system NTFS presente da Windows Vista consente la creazione di link simbolici.
Cosa è un link simbolico?
Immaginate il link simbolico come una sorta di dirottatore che impone al sistema operativo di andare a leggere o scrivere il contenuto di una cartella (o file) da un’altra parte rispetto al comando ricevuto.
Per esempio, supponiamo di creare un link simbolico alla cartella D:\Folder2 attribuendo ad esso il nome C:\Folder1. Quando qualsiasi applicazione tenterà di leggere/scrivere il contenuto di C:\Folder1, in realtà leggerà o scriverà su D:\Folder2, senza che l’applicazione stessa se ne renda conto o mostri un qualunque errore.
A che servono i link simbolici?
Faccio immediatamente un esempio pratico. Supponiamo che, non sopportate che il ProgrammaX salvi i dati nella cartella C:\Users\Enrico\DatiX ma desideriate invece che tutti i dati siano salvati nella cartella D:\Enrico\DatiX .
Con la creazione di un link simbolico, senza modificare alcunchè nella configurazione dell’applicazione, è possibile ottenere facilmente questo risultato. Basterà infatti creare un link simbolico con il nome “C:\Users\Enrico\DatiX” che punti alla cartella “D:\Enrico\DatiX”. In questo modo ogni applicazione che tenterà di scrivere/leggere il contenuto di C:\Users\Enrico\DatiX, agirà invece in D:\Enrico\DatiX.
Come creare ed eliminare i link simbolici
Il comando per creare un link simbolico è mklink. Questa la sua sintassi:
MKLINK [[/D] | [/H] | [/J]] Link Target
/D – Crea un link simbolico ad una cartella (opzione di default).
/H – Crea un link simbolico ad un file (hard link).
/J – Crea un link di giunzione tra cartelle.
Link – Specifica il nome del link simbolico.
Target – Specifica il path (relativo o assoluto) alla cartella che verrà realmente utilizzata.
Per tornare all’esempio, ecco cosa occorrerebbe fare in pratica per ottenere il risultato illustrato in precedenza:
- Copiare il contenuto della cartella C:\Users\Enrico\DatiX nella cartella D:\Enrico\DatiX
- Eliminare la cartella C:\Users\Enrico\DatiX
- creare il link simbolico digitando il seguente comando in un prompt di comandi eseguito con privilegi di amministratore:MKLINK /D C:\Users\Enrico\DatiX D:\Enrico\DatiX
Se con il file manager si va a verificare il contenuto di C:\Users\Enrico si troverà al suo interno DatiX (ma come, non l’avevamo eliminata?); non si tratta della cartella vera e propria, ma del suo link simbolico. La cartella DatiX in effetti si trova “fisicamente” in D:\Enrico\ .
Per eliminare un link simbolico, si opera come per eliminare una qualsiasi cartella.
Condividi