Unterschied zwischen weichen Links und harten Verbindungen

Unterschied zwischen weichen Links und harten Verbindungen

Unter Linux werden Links zu Dateien genauso erstellt, wie Verweise auf Dateien in den meisten gängigen Programmiersprachen erstellt werden. Diese Links sind in zwei Kategorien unterteilt: harte und weiche Links.

Ein harter Link ist effektiv eine identische Replik der Datei, daher hat der harte Link und die tatsächliche Datei denselben Inode.

Ein weicher Link, auch als symbolischer Link bezeichnet, funktioniert ähnlich wie eine Abkürzung oder einen Zeiger auf eine Datei. Es ist keine genaue Nachbildung der Datei, sondern ein Zeiger auf das Original.

Die Inode -Werte eines Soft -Links zu einer Datei und die reale Datei unterscheiden sich. Darüber hinaus können Sie nicht auf den Inhalt des Soft -Links zugreifen, wenn Sie die tatsächliche Datei entfernen. In diesem Artikel erfahren wir mehr über weiche Links und harte Links.

Verstehen Sie den Unterschied zwischen harten und weichen Links

Was sind weiche Links unter Linux?

Wir haben eine Dateiverknüpfungsfunktion in Windows, mit der eine Verknüpfung für Dateien erstellt wird. Ein weicher Link ähnelt einer Dateiverknüpfung. Jede Soft-Linked-Datei hat einen eigenen Inode-Wert, der sich auf die Originaldatei bezieht. Alle Änderungen an den Informationen in einer Datei werden in der anderen gespiegelt. Sie können Soft-Links über verschiedene Dateisysteme anschließen. Wenn die Quelldatei jedoch entfernt oder übertragen wird, funktioniert die Soft-Linked-Datei nicht ordnungsgemäß ordnungsgemäß. Dieser Link wird als hängende Link bezeichnet. Das Entfernen eines Soft -Links hat keinen Einfluss. Wenn Sie jedoch die Originaldatei entfernen, kann der Link nicht mehr funktionieren.

Ein Soft -Link kann verwendet werden, um auf ein Verzeichnis zu verweisen, und behält nur den Pfad zur Originaldatei, nicht auf seinen Inhalt bei. Die Größe des Soft Links entspricht der Datei, für die der Soft Link gebildet wird. Zum Beispiel, wenn die Datei theabcd.TXT ist 5 KB, der Soft -Link dieser Datei ist auch 5 KB.

Ein weicher Link:

  • kann das Dateisystem durchqueren,
  • Ermöglichen Sie, sich über Verzeichnisse zu verbinden,
  • hat unterschiedliche Dateiberechtigungen und Inode als die Originaldatei,
  • Berechtigungen werden nicht geändert,
  • und hat nur den Pfad der Originaldatei, nicht den Inhalt

Was sind harte Links unter Linux?

Ein harter Link in Linux entspricht einer auf einer Festplatte gespeicherten Datei - und bezieht sich wirklich auf oder links zu einem Ort auf einer Festplatte. Ein harter Link ist im Wesentlichen ein Spiegelbild der Originaldatei. Der Unterschied zwischen einem harten Link und einem Soft Link besteht darin, dass das Entfernen der Quelldatei keinen Einfluss auf einen harten Link hat, aber einen Soft Link nicht verarbeitbar macht. Der wichtigste Vorteil einer harten Verbindung besteht also darin, dass Sie weiterhin auf den Inhalt der Datei zugreifen können, selbst wenn Sie sie unbeabsichtigt löschen.

Ein harter Link:

  • Die Grenzen des Dateisystems können nicht durchlaufen werden,
  • Verzeichnisse können nicht verbunden werden,
  • hat die gleichen Dateiberechtigungen und Inode -Nummer wie die Originaldatei
  • Wenn wir die Berechtigungen der Quelldatei ändern, werden auch die Berechtigungen für den harten Link geändert
  • Enthält den Inhalt der Originaldatei, auch wenn die Originaldatei zerstört wird, können Sie auf den Inhalt zugreifen.

Unterschied zwischen weichen Links und harten Verbindungen

ParameterWeicher LinkHarte Verbindung
Inode -NummerVerschiedene Inode -Nummer als die Originaldatei.Gleiche Inode -Nummer wie die Originaldatei.
VerzeichnisWeiche Links können Verzeichnisse verknüpfenHarte Links können Verzeichnisse nicht überschreiten.
Originaldatei löschtDer Link wird nicht betrieben, wenn die Originaldatei gelöscht wird. Es ist nichts weiter als eine Abkürzung zur Originaldatei.Der harte Link wird weiter funktionieren, auch wenn die Originaldatei gelöscht wird.
GeschwindigkeitWeiche Links sind langsamerHarte Links sind schneller als weiche Links.
SpeicherverbrauchMehrWeniger

Überprüfen Sie den folgenden Screenshot von Inode -Unterschieden zwischen Hard Link und Soft Link -Dateien:

Inode -Änderungen in Soft Link und Hard Link

So erstellen Sie harte Links und weiche Links?

Lassen Sie uns die Unterschiede mit einer schnellen Übung verstehen. Erstellen Sie eine einfache Textdatei in einem Verzeichnis und nennen Sie es IT -Datei1.txt. Wir erstellen einen sanften Link und einen harten Link für diese Datei.

Hartes Link erstellen:

  1. Um einen harten Link zu erstellen, verwenden wir die "Ln" Befehl. Geben Sie also den folgenden Befehl in Ihr Terminalfenster ein:
    ln Datei1.txt hardlink.txt  
  2. Hier verwenden wir den Befehl 'in', um einen harten Link zu erstellen, und geben dann den Namen der Datei an, für die wir den harten Link benötigen, und nennen dann den harten Link, der hardlink ist.txt.

    Geben Sie den folgenden Befehl ein, nachdem Sie den vorherigen Befehl ausgeführt haben:

    ls -l  
  3. Dies zeigt Ihnen, dass es im Verzeichnis zwei Dateien gibt - Datei1.txt und hardlink.txt. Überprüfen wir nun nur, ob unsere Hard -Link -Datei funktioniert oder nicht. Öffne den Hardlink.TXT -Datei in einem Texteditor:
    Nano Hardlink.txt  
  4. Ändern Sie den Inhalt der Datei und schreiben Sie etwas anderes. Öffnen Sie dann die Originaldatei:
    Katzendatei1.txt  
  5. Sie sehen, dass die in den Hard Link -Dateien vorgenommenen Änderungen in der Originaldatei widerspiegelt werden. Lassen Sie uns nun die Originaldatei löschen und feststellen, ob die Hard -Link -Datei weiterhin funktioniert oder nicht:
    RM -Datei1.txt  
  6. Führen Sie den Befehl "ls" aus und Sie werden sehen, dass es im Verzeichnis Hardlink nur eine Datei gibt.txt. Öffnen Sie die Datei und Sie werden feststellen, dass die Datei immer noch den gleichen Inhalt hat.

Soft Link erstellen:

  1. Zu demonstrieren, Agai Ich habe Datei erstellt.txt im aktuellen Verzeichnis. Wir werden einen weichen Link für dasselbe erstellen. Führen Sie den folgenden Befehl aus, um einen weichen Link zu erstellen:
    LN -S -Datei1.txt Softlink.txt  
  2. Leiten Sie die ls -l Befehl und Sie werden sehen, dass es im Verzeichnis zwei verschiedene Dateien gibt. Wenn Sie nun eingeben
    Cat Softlink.txt  
  3. Sie sehen den Inhalt von Datei1.TXT als Soft -Link zeigt auf diese Datei. Und wenn Sie die Datei1 entfernen1.TXT -Datei:
    RM -Datei1.txt  
  4. Führen Sie wieder die ls -l Befehl und Sie sehen einen Fehler. Dies liegt daran. Und wenn wir tippen:
    Cat Softlink.txt  

    Sie werden sehen, dass es keine solche Datei oder Verzeichnis gibt

Einpacken

Ein harter Link nimmt weniger Platz ein und funktioniert schneller, aber die daran vorgenommenen Änderungen werden in der Originaldatei widerspiegelt. Während weiche Links mehr Platz benötigen, haben alle Änderungen am Soft Link keinen Einfluss auf die Originaldatei. Im Gegensatz zu harten Links sind weiche Verbindungen zu Verzeichnissen zulässig.