DevOps Bootcamp · Lezione

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.

Lezione 4 di 413 passaggi

Creazione di link: hard link e symlink è una lezione DevOps Bootcamp 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 DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp 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 data

Comportamento 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.txt

Limiti 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/site

Comportamento 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/site

Symlink 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 linked

Rimozione 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 symlink

Quale 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.

Gratis per iniziare

Impara DevOps Bootcamp con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
142
Lezioni
568

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 DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp 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 DevOps Bootcamp 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 DevOps Bootcamp?

Non è richiesta alcuna esperienza precedente. DevOps Bootcamp 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 DevOps Bootcamp?

Sì. Ogni lezione DevOps Bootcamp 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

  1. Visualizzazione del contenuto dei file (cat, less, head, tail)
  2. Comprensione dei permessi dei file (chmod, chown)
  3. Ricerca dei file (find, grep)
  4. Creazione di link: hard link e symlink
← Torna a DevOps Bootcamp