Cos'è un collegamento simbolico in Linux?

Cos'è un collegamento simbolico in Linux?
Un collegamento simbolico è anche noto come collegamento simbolico o legame soft. È un collegamento per un percorso assoluto o relativo a una directory o file. Un nome che rappresenta un collegamento di un percorso assoluto o relativo a una directory o un file è un collegamento simbolico. Il sintesi è un file di piccoli contenuti il ​​cui nome file viene utilizzato come symlink. Considera il seguente collegamento assoluto:
/Home/John/Dir1/Dir2/Dir3/Dir4

Il primo taglio in avanti è la directory principale; La casa è la directory della casa, che è una sottodirectory della directory principale; John è la directory dell'utente, John, che è una sotto-directory della home directory. Il resto delle directory è sotto-directory di una directory precedente creata da John.

È possibile avere un nome chiamato quarto residente nella directory dir2, e che rappresenta DIR4, per il percorso assoluto,

/Home/John/Dir1/Dir2/Dir3/Dir4

o il percorso relativo,

dir3/dir4

Ora, il quarto residente in DIR2 è un collegamento simbolico per Dir4. Prendi in considerazione lo stesso collegamento assoluto, ma con un file chiamato, Effile; questo è:

/Home/John/Dir1/Dir2/Dir3/Dir4/Effile

È possibile avere un nome chiamato quarto file residente nella directory dir2 e che rappresenta l'effile, per il percorso assoluto,

/Home/John/Dir1/Dir2/Dir3/Dir4/Effile

o il percorso relativo,

DIR3/DIR4/Excile

Ora, il quarto file che risiede in dir2 è un collegamento simbolico per effile.

Un collegamento simbolico può rappresentare una directory o un file. Il lettore ora sa quello che viene chiamato un collegamento simbolico nei sistemi operativi Linux/Unix. Tuttavia, è che tutto il programmatore dovrebbe sapere? - NO. Il programmatore deve sapere come creare un collegamento simbolico, utilizzare un collegamento simbolico, eliminare un collegamento simbolico, che significa collegamenti penzolanti, confronto con collegamenti duri e vantaggi e svantaggi di entrambi i tipi di collegamento. Tutto ciò che è discusso in questo articolo.

Il guscio bash viene utilizzato per questo articolo.

Contenuto dell'articolo

  • Introduzione - Vedi sopra
  • Creare un collegamento simbolico
  • Usando Symlink
  • Rimozione di Symlink
  • Collegamento penzolante
  • Nozioni di base su Hard Link
  • Alcuni vantaggi e svantaggi di entrambi i collegamenti
  • Conclusione

Creare un collegamento simbolico

Prima di creare un collegamento simbolico, dovrebbero già esistere un percorso di directory e/o un file. Se il percorso non esiste già, può essere creato come segue, da qualsiasi directory:

mkdir -p/home/john/dir1/dir2/dir3/dir4

Se l'interruttore -p è assente, le directory non verranno create. Un collegamento simbolico può rappresentare un percorso di directory da solo o un percorso di directory con un file. Se il file non esiste già, può essere creato da qualsiasi directory o directory home, come segue:

Touch/Home/John/Dir1/Dir2/Dir3/Dir4/Effile

Il file (file di testo) è efficace e il file attualmente non ha contenuti.

Creare un collegamento simbolico

La sintassi per creare un collegamento simbolico in una directory è:

ln -s [percorso originale] [NUOVO LINK Nome]

La sintassi per creare un collegamento simil a un file è simile, cioè:

ln -s [percorso originale/nome file] [Nuovo collegamento FileName]

Il comando Link è LN. Se l'interruttore -s è assente, viene creato un collegamento duro (vedi sotto).

Creazione di una directory Symlink

Un collegamento simbolico deve risiedere in una directory. Per creare un collegamento simbolico per un'altra directory, il programmatore deve usare il comando CD per andare dove risiederà il collegamento simbolico e lì, creare il collegamento simbolico con un percorso assoluto o un percorso relativo. Il sintesi, quarto per risiedere in dir2, per la directory, dir4 del percorso

/Home/John/Dir1/Dir2/Dir3/Dir4

Può essere creato in DIR2 come segue:

ln -s/home/john/dir1/dir2/dir3/dir4 quarto

L'uso del collegamento relativo sarà il seguente, ancora nella directory DIR2:

LN -S DIR3/DIR4 Quarto

Creazione di un file symlink

Un collegamento simbolico deve risiedere in una directory. Per creare un collegamento simbolico in un file in un'altra directory, il programmatore deve utilizzare il comando CD per andare dove risiederà il collegamento simbolico e lì, creare il collegamento simbolico con un percorso assoluto o con un percorso relativo. Il sintesi, il quarto file per risiedere in dir2, per il file effile in DIR4, del percorso,

/Home/John/Dir1/Dir2/Dir3/Dir4

Può essere creato in DIR2 come segue:

LN -S/Home/John/Dir1/Dir2/Dir3/Dir4/Excile Fourthfile

L'uso del collegamento relativo sarà il seguente, ancora nella directory DIR2:

LN -S DIR3/DIR4/Excile Fourthfile

È possibile creare un file symlink da un sintesi di directory? - SÌ. Lo lascio come esercizio per il lettore.

Usando Symlink

Per accedere alla directory, DIR4, utilizzando il collegamento Symlink, quarto, da qualsiasi directory, tipo:

CD ~/Dir1/Dir2/Quarto

e premere Invio. Si noti che il quarto ha sostituito DIR3/DIR4. Il prompt diventerà qualcosa di simile:

John@computer: ~/dir1/dir2/quarto $

Tuttavia, questo non è il percorso di DIR4. Il percorso è in realtà:

/home/john/dir1/dir2/dir3/dir4/

Per accedere al file, Excile in Directory, DiR4, usando il collegamento Symlink, Quarthfile, da qualsiasi directory, tipo:

Cat ~/Dir1/Dir2/Fourthfile

e premere Invio. Si noti che Quarthfile ha sostituito DIR3/DIR4/Excile. Il contenuto del file (effile) deve essere visualizzato nel terminale. Nota l'uso del comando, gatto.

Rimozione di Symlink

Più di un collegamento simbolico

Ci può essere più di un collegamento simbolico per una directory o un file. Quando viene creata una directory o un file, c'è un collegamento naturale ad esso. Un collegamento simbolico è solo un codice alternativo e più breve per accedere alla directory o al file. Può esserci più di un sintesi per accedere a una directory o un file. Se viene eliminato un collegamento simbolico, gli altri collegamenti simbolici o il collegamento naturale rimangono operativi.

Per conoscere il numero di collegamenti e il percorso originale (percorso utilizzato nella creazione di Symlink), vai alla directory che ha il collegamento simbolico con il comando e il tipo CD:

ls -la

Visualirà alcune righe. Ci sarà una riga per ciascuno dei collegamenti. Dopo il testo come lrwxr-xrwx sarà il numero di collegamenti similple. Alla fine della linea, sarà il percorso originale. Un esempio del display è il seguente:

Totale 12
drwxr-xr-x 3 John John 4096 30 maggio 19:42 .
drwxr-xr-x 3 John John 4096 30 maggio 07: 59 ..
drwxr-xr-x 3 John John 4096 30 maggio 07:59 DIR3
lrwxrwxrwx 1 John John 32 30 maggio 19:42 Quarto ->/Home/Forcha/Dir1/Dir2/Dir3/Dir4
lrwxrwxrwx 1 John John 39 maggio 19:38 Quarthfile ->/Home/Forcha/Dir1/Dir2/Dir3/Dir4/Effile

Il comando RM

Ricorda, il collegamento simbolico risiede in una directory. Una directory o un file symlink viene rimossa nello stesso modo in cui un file viene rimosso; Dopotutto, un collegamento simbolico è un file. I seguenti due comandi illustrano questo:

rm ~/dir1/dir2/quarto
RM ~/Dir1/Dir2/Fourthfile

Nota il percorso precedente al file Symlink. Inoltre, nota l'uso di ~ che si riferisce alla directory dell'utente.

Collegamento penzolante

Ci può essere più di un collegamento simbolico per una directory o un file. Se la directory o il file effettiva vengono spostate o rimosse utilizzando il collegamento naturale, i collegamenti simbolici diventano collegamenti pendenti, poiché non hanno più alcun uso. Un collegamento penzolante è anche chiamato collegamento rotto, o collegamento orfano o link morto.

Nozioni di base su Hard Link

Il nome naturale a una directory o file è un collegamento difficile. Altri collegamenti difficili possono essere creati per indicare quella stessa directory o file. Se la directory o il file originale viene eliminata (rimossa) utilizzando il collegamento naturale, i dati esistono ancora attraverso gli altri collegamenti rigidi. I dati vengono rimossi completamente solo quando tutti i collegamenti duri sono stati rimossi.

Nota: i collegamenti duri sono consigliati solo per i file e non per le directory.

Alcuni vantaggi e svantaggi di entrambi i collegamenti

Vantaggi

  • Un collegamento simbolico può collegarsi a un file, nonché a una directory.
  • Un collegamento soft (Symlink) può essere creato per diversi volumi (file system).
  • Un collegamento duro non può finire come un collegamento rotto (penzolante).

Svantaggi

  • I collegamenti soft (collegamenti simbolici) hanno la possibilità di diventare collegamenti morti (penzolanti).
  • Non è consigliabile creare un nuovo collegamento duro per una directory.
  • Non è possibile creare un collegamento duro per volumi diversi (file system).

Conclusione

Un collegamento simbolico è un collegamento per una directory o un file. Il collegamento è esso stesso un file di piccoli contenuti e deve risiedere in una directory. Un nuovo link hard è un nome alternativo al nome originale e indica lo stesso file. I collegamenti morbidi e i collegamenti duri hanno i loro vantaggi e svantaggi. Per creare un collegamento simbolico, vai alla directory in cui deve essere il collegamento. Usa il comando LN con l'interruttore -s. Per accedere a un collegamento simbolico, adattarsi al collegamento simbolico alla fine del percorso della directory e possibilmente precedere il percorso con ~. Un altro nome per Symlink è un collegamento simbolico o un collegamento soft. Per conoscere il numero di collegamenti simbolici per una directory o un file, vai alla directory in cui risiede il collegamento simbolico e usa il comando, "ls -la."Questo dà anche il percorso originale.

Un collegamento simbolico viene rimosso nel modo in cui un file viene rimosso. Esistono diversi modi per rimuovere un collegamento simbolico. Tuttavia, il comando per ricordare facilmente di rimuovere un collegamento simbolico è RM. Adatta il collegamento simbolico alla fine del percorso della directory, se necessario. E forse precedere il percorso con ~. Un collegamento pericoloso è un collegamento simbolico di un file o di una directory, che è stato spostato o cancellato (rimosso). Tale collegamento non è più di alcun uso. Un altro nome per collegamenti penzolanti è il collegamento interrotto, o link orfano o link morto.