Creazione di link: hard link e symlink
Riferisca un file da più posizioni. Impari la differenza tra hard link e link simbolici, come crearli con ln e quando usare ciascun tipo.
Creazione di link: hard link e symlink è una lezione Linux Command Line & Bash Scripting Mastery gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Linux Command Line & Bash Scripting Mastery, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.
Che cos'è un collegamento
Un collegamento consente a più di un nome di puntare ai dati di un file. Linux supporta due tipi: hard link e collegamenti simbolici (soft link).
Inode: il file reale
Sul disco, un file è un inode che contiene dati e metadati. Un nome di file è semplicemente una voce di directory che punta a un inode. Questo è fondamentale per comprendere i collegamenti.
Creazione di un hard link
Un hard link è un'altra voce di directory che punta allo stesso inode. Utilizzare ln senza opzioni.
ln original.txt copy.txt
# both names share the same dataComportamento degli hard link
Poiché entrambi i nomi puntano a un unico inode, modificare il file tramite l'uno o l'altro cambia gli stessi dati. Il file viene eliminato solo quando viene rimosso l'ultimo collegamento.
rm original.txt # data still reachable via copy.txtLimiti degli hard link
Gli hard link non possono attraversare filesystem diversi e, in genere, non possono collegare directory. Inoltre, non possono puntare a un file su un altro disco o un'altra partizione.
Creazione di un collegamento simbolico
Un symlink è un piccolo file che memorizza un percorso verso un altro file. Lo si crea con ln -s.
ln -s /var/www/site current
# current -> /var/www/siteComportamento dei symlink
Un symlink punta a un nome, non a un inode. Se la destinazione viene eliminata o spostata, il symlink diventa un collegamento interrotto (dangling).
ls -l current
current -> /var/www/siteSymlink tra filesystem diversi
A differenza degli hard link, i symlink possono attraversare filesystem diversi e puntare a directory: per questo vengono usati, ad esempio, per le directory delle release soggette a rotazione.
Riconoscere i collegamenti con ls
ls -l mostra i symlink con una freccia e un tipo di file l. Per gli hard link, la colonna del numero di collegamenti mostra quanti nomi condividono l'inode.
ls -li
12345 -rw-r--r-- 2 user ... # count 2 = hard linkedRimozione dei collegamenti
Utilizzare rm su un symlink per eliminare il collegamento, non la destinazione. Attenzione: una barra finale su un symlink verso una directory può comportarsi in modo imprevisto.
rm current # removes only the symlinkQuale usare e quando
Utilizzare un symlink per scorciatoie, riferimenti tra filesystem diversi e directory (il caso più comune). Utilizzare un hard link quando servono più nomi equivalenti per gli stessi dati su uno stesso filesystem.
Verifica rapida
Verifichi la Sua comprensione.
Riepilogo
Ha imparato a conoscere i collegamenti: gli hard link aggiungono un nome allo stesso inode (stesso filesystem, niente directory; i dati persistono finché non scompare l'ultimo collegamento), mentre i symlink (ln -s) memorizzano un percorso, possono attraversare filesystem diversi e puntare a directory, ma possono interrompersi.
Domande Frequenti
La lezione «Creazione di link: hard link e symlink» è gratuita?
Sì — il testo completo di «Creazione di link: hard link e symlink» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Linux Command Line & Bash Scripting Mastery, passa a CoddyKit PRO. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.
Cosa imparerò in «Creazione di link: hard link e symlink»?
Riferisca un file da più posizioni. Impari la differenza tra hard link e link simbolici, come crearli con ln e quando usare ciascun tipo. Eserciti Linux Command Line & Bash Scripting Mastery con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Linux Command Line & Bash Scripting Mastery?
Non è richiesta alcuna esperienza precedente. Linux Command Line & Bash Scripting Mastery su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Creazione di link: hard link e symlink»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Linux Command Line & Bash Scripting Mastery?
Sì. Ogni lezione Linux Command Line & Bash Scripting Mastery include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Visualizzazione del contenuto dei file (cat, less, head, tail)
- Comprensione dei permessi dei file (chmod, chown)
- Ricerca dei file (find, grep)
- Creazione di link: hard link e symlink