Collegamenti simbolici: cosa sono e come usarli

I collegamenti simbolici in Linux sono una potente funzionalità del file system Linux che consente di creare un collegamento a un file o una directory. Sono simili alle scorciatoie di Windows, ma molto più flessibili e potenti. Su Linux, i collegamenti simbolici (noti anche come collegamenti simbolici o collegamenti software) sono un tipo di file che punta a un altro file o directory. Sono spesso usati per creare scorciatoie o per accedere a file o directory su diversi filesystem.

I collegamenti simbolici differiscono dai collegamenti fisici in quanto non contengono i dati del file o la posizione a cui puntano. Al contrario, contengono un riferimento alla posizione del file o della directory. Ciò significa che i collegamenti simbolici possono essere utilizzati per accedere a file o cartelle che sono stati spostati o rinominati senza la necessità di un aggiornamento.

I collegamenti simbolici in Linux possono essere utili per vari motivi, come ad esempio:

  • Organizzare i tuoi file: È possibile creare collegamenti simbolici in Linux per raggruppare file o directory correlati in posizioni diverse senza doverli spostare o copiare.
  • Condividere i tuoi file: Puoi creare collegamenti simbolici in Linux per condividere file o directory con altri utenti o applicazioni senza dover modificare le loro autorizzazioni o proprietà.
  • Risparmio di spazio su disco: È possibile creare collegamenti simbolici in Linux per evitare la duplicazione di file o directory di grandi dimensioni utilizzati da più programmi o utenti.
  • Semplificazione di strutture di directory complesse: È possibile creare collegamenti simbolici in Linux per abbreviare percorsi lunghi o confusi che sono difficili da ricordare o digitare.

Per creare un collegamento simbolico con il comando ln, è necessario aprire una finestra di terminale e digitare la seguente sintassi:

ln (option) /path/to/the/file file

IL -s opzione dice al comando ln di creare un soft link. Se si omette questa opzione, verrà creato un collegamento reale per impostazione predefinita. IL target è il file o la directory a cui vuoi collegarti e il file link è il nome e la posizione del collegamento simbolico che si desidera creare. È possibile specificare percorsi assoluti o relativi sia per la destinazione che per il collegamento.

Ecco come creare un simbolico su Linux con il comando ln:

Avvia Terminale.
Passare alla directory contenente il file o la directory a cui si desidera collegarsi.
Inserisci il seguente codice:

ln -s (fonte) (destinazione)

Il percorso del file o della directory a cui si desidera collegarsi è specificato come source.
Il nome del collegamento simbolico che si desidera creare è destination.

Per creare un collegamento simbolico al file example1.txt nella directory corrente, ad esempio, utilizzare il seguente comando:

ln -s esempio1.txt esempio2.txt

Per creare un collegamento simbolico alla directory /home e chiamarlo come folder usa il comando:

ln -s /home/folder
ls

Dopo aver digitato il comando, premi Invio. Se il comando ha avuto esito positivo, nella directory corrente verrà creato un nuovo file o una nuova directory denominata folder.

Puoi usare -f (forza) opzione con il comando ln per riscrivere un collegamento simbolico. Il collegamento simbolico esistente verrà sovrascritto, anche se punta a un file diverso.

Ecco la sintassi per sovrascrivere i collegamenti simbolici:

ln -sf url_vecchio.txt url_nuovo.txt

Ad esempio, per sostituire un collegamento simbolico denominato url_vecchio.txt con un nuovo file denominato url_nuovo.txt usa il comando:

ln -f url_vecchio.txt url_nuovo.txt

Il collegamento simbolico esistente example1.txt verrà sostituito con un nuovo collegamento simbolico che punta al file example2.txt.

Se il collegamento simbolico esiste già e non si utilizzare l’opzione -f, il comando potrebbe fallire. Ciò è dovuto all’impossibilità del comando ln di sovrascrivere un file o una directory esistente.

Utilizzando il comando find, individuare i collegamenti simbolici interrotti. Il comando find può essere utilizzato per cercare file e directory che corrispondono a una serie di criteri. Per trovare connessioni simboliche interrotte, utilizzare la seguente sintassi:

rm example1.txt

Se non ci si trova nella stessa directory del collegamento, è possibile utilizzare l’opzione -path per indicare il percorso della directory. Ad esempio, per individuare un collegamento non è necessario menzionare il percorso directory /home/directory_name, puoi eseguire il comando:

find ~/directory_name -xtype l

Infine, puoi utilizzare il seguente comando per eliminare il collegamento simbolico interrotto:

find ~/directory_name -xtype l -delete
~/folder$ ls
example1.txt example2.txt
~/folder$ rm example1.txt
~/folders$ find -xtype l
./example2.txt
~/folders$ find -xtype l -delete
~/folder$ ls
~/folder$

Per eliminare un collegamento simbolico in Linux con il comando rm, utilizzare la seguente sintassi:

rm (symbolic)

Per rimuovere un collegamento simbolico in Linux a una directory, utilizzare il comando rm -rf. È fondamentale notare, tuttavia, che questo rimuoverà anche il contenuto della directory.

rm -rf "folder"
~/folder$ ls
example1.txt example2.txt
~/folders$ rm example2.txt
~/folder$ ls
example1.txt 
~/folder$ 

L’eliminazione di un collegamento simbolico non influisce né elimina il file o la directory di destinazione. Rimuove solo il riferimento ad esso.

Puoi usare il unlink comando per rimuovere solo il collegamento simbolico e non il contenuto della directory. Per rimuovere un collegamento simbolico denominato collegamento che conduce a una directory denominata mydir, ad esempio, eseguire il comando:

unlink /path/to/the/link

Ciò elimina il collegamento di collegamento simbolico senza rimuovere il contenuto della directory mydir.

Conclusione

In questo articolo hai imparato cosa sono i collegamenti simbolici in Linux, perché sono utili, come crearli ed eliminarli e come usarli in Linux. I collegamenti simbolici in Linux sono file speciali che puntano ad altri file o directory sul tuo sistema. Puoi creare ed eliminare collegamenti simbolici in Linux con il comando ln o con uno strumento grafico.

Se trovi utile questo articolo, lasciaci un commento. La ringrazio molto per il vostro tempo.

Exit mobile version