Un collegamento in un sistema operativo basato su Linux punta a un file o una directory. I collegamenti consentono a più nomi di file di fare riferimento allo stesso file. Ci sono due tipi di link, Soft Link e Hard Link. In parole povere, un collegamento software è un collegamento effettivo al file originale, mentre un collegamento fisico è una copia speculare del file originale.
Se elimini il file originale. non è possibile accedere ai suoi contenuti tramite il suo soft link. D'altra parte, se elimini il file originale puoi comunque accedere al suo contenuto tramite il suo hard link. L'hard link ha lo stesso numero di inode e le stesse autorizzazioni di file mentre il soft link ha lo stesso numero di inode e le stesse autorizzazioni di file.
In questo post, ti mostreremo come creare un collegamento soft e hard in Linux.
Prerequisiti
- Un nuovo server Ubuntu 20.04 sulla piattaforma Atlantic.Net Cloud
- Una password di root configurata sul tuo server
Crea server cloud Atlantic.Net
Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo Ubuntu 20.04 come sistema operativo con almeno 2GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.
Dopo aver effettuato l'accesso al tuo server Ubuntu 20.04, esegui il comando seguente per aggiornare il tuo sistema di base con gli ultimi pacchetti disponibili.
apt-get update -y
Crea un collegamento software
Innanzitutto, crea una directory denominata softlink con il seguente comando:
mkdir softlink
Quindi, crea un file chiamato normal_link.txt:
cd softlink echo "This is a softlink" > normal_link.txt
Quindi, crea un collegamento software del file normal_link.txt :
ln -s normal_link.txt soft_link.txt
Ora controlla il contenuto di entrambi i file:
cat normal_link.txt
Uscita:
This is a softlink
E
cat soft_link.txt
Uscita:
This is a softlink
Come puoi vedere, entrambi i file hanno lo stesso contenuto.
Ora controlla il numero di inode e le autorizzazioni di entrambi i file:
ls -lia
Dovresti vedere che entrambi i file hanno numeri di inode e autorizzazioni diversi.
15866192 drwxrwxr-x 2 vyom vyom 4096 Apr 19 15:10 . 15466497 drwxrwxrwt 13 root root 4096 Apr 19 15:10 .. 15866186 -rw-rw-r-- 1 vyom vyom 19 Apr 19 15:09 normal_link.txt 15866189 lrwxrwxrwx 1 vyom vyom 15 Apr 19 15:10 soft_link.txt -> normal_link.txt
Ora rimuovi il file originale con il seguente comando:
rm -rf normal_link.txt
Ora, controlla il contenuto del file di collegamento software:
cat soft_link.txt
Uscita:
cat: soft_link.txt: No such file or directory
Come puoi vedere, non esiste un file o una directory di questo tipo.
Se desideri rimuovere il collegamento software, esegui il comando seguente:
unlink soft_link.txt
Crea un collegamento reale
Innanzitutto, crea una directory denominata hardlink con il seguente comando:
mkdir hardlink
Quindi, crea un file chiamato normal_link.txt con il seguente comando:
cd hardlink echo "This is a hard link" > normal_link.txt
Quindi, crea un collegamento reale del file con il seguente comando:
ln normal_link.txt hard_link.txt
Ora controlla il contenuto di entrambi i file:
cat normal_link.txt
Uscita:
This is a hard link
E
cat hard_link.txt
Uscita:
This is a hard link
Quindi, controlla l'inode e l'autorizzazione di entrambi i file:
ls -lia
Dovresti vedere che entrambi i file hanno lo stesso inode e la stessa autorizzazione:
15866186 drwxrwxr-x 2 vyom vyom 4096 Apr 19 15:16 . 15466497 drwxrwxrwt 14 root root 4096 Apr 19 15:16 .. 15866190 -rw-rw-r-- 2 vyom vyom 20 Apr 19 15:16 hard_link.txt 15866190 -rw-rw-r-- 2 vyom vyom 20 Apr 19 15:16 normal_link.txt
Ora, prova ad aggiungere del contenuto al file originale:
echo "I am adding some content" >> normal_link.txt
Ora, controlla il contenuto del collegamento fisico:
cat hard_link.txt
Dovresti vedere che le modifiche apportate al file originale vengono aggiornate in entrambi i file.
This is a hard link I am adding some content
Ora rimuovi il file originale:
rm -rf normal_link.txt
Ora, controlla il contenuto del collegamento fisico:
cat hard_link.txt
Dovresti comunque vedere il contenuto del file:
This is a hard link I am adding some content
Se vuoi rimuovere l'hard link, esegui il seguente comando:
unlink hard_link.txt
Conclusione
Nella guida sopra, hai imparato come creare un collegamento soft e hard su Linux. Prova a creare collegamenti soft e hard sul tuo account di hosting VPS con Atlantic.Net!