Unterschied zwischen Soft Link und Hard Link unter UNIX im Betriebssystem

Eine Verbindung in einem UNIX-basierten System wird verwendet, um eine Verbindung zwischen einer Datei und den tatsächlichen Daten auf der Festplatte herzustellen. Es ist mehr ein Zeiger oder eine Referenz, die auf eine andere Datei oder ein Verzeichnis verweist, genau wie das Konzept von Zeigern in Programmiersprachen.

Angenommen, eine Datei hat einen sehr langen Namen und kann aus bestimmten Gründen nicht geändert werden. In UNIX können wir auf die Datei mit einer Referenz verweisen, wobei zur Vereinfachung ein kürzerer Name verwendet wird. Diese Verweise auf dieselbe Datei in UNIX werden als Links bezeichnet. Einfach ausgedrückt, ein Link ist ein Mittel, um auf den Inhalt einer Datei zu verweisen.

In UNIX werden zwei Arten von Links verwendet: Soft Links und Hard Links. Beide werden grundsätzlich für den gleichen Zweck verwendet, mit Ausnahme der Art, wie sie sich verhalten.

Was ist ein Soft Link??

Ein Soft Link oder ein symbolisches Pink ist eine kleine Zeigerdatei, die dem Dateinamen einen Dateinamen zuordnet. Es ist nichts anderes als eine Verknüpfung zur Originaldatei, ähnlich der Verknüpfungsoption in den Windows-Betriebssystemen. Sie dient lediglich als Verweis auf eine andere Datei oder ein anderes Verzeichnis, ohne dass der tatsächliche Inhalt der Datei das Löschen der Softlinks erleichtert, ohne dass der Inhalt der ursprünglichen Datei oder des Verzeichnisses beeinträchtigt wird.

Vereinfacht ausgedrückt, ist ein Softlink normalerweise ein Alias ​​für die Originaldatei, der auf die Zieldatei oder das Zielverzeichnis umleitet, wenn über den im Betreff des Softlinks angegebenen Pfadnamen zugegriffen wird. Darüber hinaus können Sie Softlinks verwenden, um eine Verknüpfung mit dem Dateisystem herzustellen.

Was ist ein Hard Link??

Ein Hard Link ist einfach eine Replik der Originaldatei, die als Referenz oder als Zeiger auf dieselbe Datei dient, wodurch der Zugriff auf die Originaldatei erleichtert wird, selbst wenn die Originaldatei entfernt oder von ihrem ursprünglichen Speicherort verschoben wird. Im Gegensatz zu Softlinks wirken sich Änderungen an den fest verknüpften Dateien auf andere Dateien aus. Der Hardlink funktioniert auch dann, wenn Sie die Quelldatei aus dem System löschen.

Hardlinks weisen denselben Inode-Wert auf und verweisen im Gegensatz zu Softlinks auf den Dateispeicherort statt auf das Verzeichnis. Es wird normalerweise in Dateisystemen verwendet, die mehr als eine feste Verknüpfung für dieselbe Datei zulassen. Einfach ausgedrückt, ist ein Hardlink nur ein zusätzlicher Name für eine bereits vorhandene Datei auf UNIX-Systemen.

Unterschied zwischen Soft Link und Hard Link in UNIX

Bedeutung

Ein Soft Link, auch symbolischer Link genannt, ist ein spezieller Zeiger, der Links zwischen Dateien herstellt. Sie ist der Verknüpfungsfunktion, die in Windows-Betriebssystemen verfügbar ist, sehr ähnlich. Ein Softlink ist einfach eine Verknüpfung einer Datei, die als Referenz auf eine andere Datei oder ein anderes Verzeichnis dient. Eine feste Verbindung unterscheidet sich sehr von einer weichen Verbindung. Sie dient als Referenz oder Zeiger auf die Originaldatei, dh es handelt sich um die genaue Spiegelkopie der Originaldatei, auf die sie verweist. Einfach gesagt, ein Hardlink ist nur ein zusätzlicher Name für eine bereits vorhandene Datei.

Verhalten

Da eine Soft-Linked-Datei einen separaten Inode-Wert enthält, der auf die Originaldatei verweist, kann auf die Verknüpfung nicht zugegriffen werden, wenn die Originaldatei oder das Originalverzeichnis aus dem System entfernt wird. Es ist nur eine Verknüpfung zu einer Datei, sodass Sie die Softlinks löschen können, ohne die Originaldatei oder das Originalverzeichnis zu beeinträchtigen. Im Gegensatz zu Softlinks haben Hardlinks denselben Inode-Wert wie das Original, das auf denselben Dateispeicherort zeigt. Hardlinks sind flexibler als Softlinks, da Sie auch dann auf die Datei zugreifen können, wenn die Originaldatei aus dem System entfernt wird.

Befehl

Um in UNIX-basierten Systemen Verknüpfungen zwischen Dateien herzustellen, müssen Sie den Befehl „In“ verwenden. Ein Softlink verweist auf einen symbolischen Pfad, der den Ort der Originaldatei, nicht aber den Inhalt angibt. Ein Softlink wird mit einem In-s-Befehl erstellt.

In -s

Hier würden Sie die 'source_file' durch die Originaldatei ersetzen, für die Sie einen Softlink erstellen möchten, und 'myfile' durch den Namen des Softlinks oder symbolischen Links. Mit dem Befehl In -s wird der Softlink zu einer Datei erstellt Name, beide im aktuellen Verzeichnis.

Andererseits wird mit dem Befehl "In" eine feste Verbindung erstellt. Der Befehl In ist ein Standardbefehl von UNIX, mit dem eine feste Verknüpfung erstellt wird, die auf mehrere Dateien mit demselben Namen verweist.

Im

Struktur

Im Gegensatz zu Softlinks, die zum Verknüpfen von Dateien und Verzeichnissen verwendet werden können, können Hardlinks nur Dateien verknüpfen, jedoch keine Verzeichnisse. Der Unterschied gibt Softlinks bestimmte Eigenschaften an, die Hardlinks nicht haben, z. B. die Möglichkeit, über das Dateisystem hinweg zu verknüpfen. Das Erstellen und Löschen von symbolischen Links wirkt sich nicht auf die Originaldatei aus. Hard-Links hingegen können nicht verwendet werden, um Dateien außerhalb des Dateisystems zu verknüpfen. Hardlinks haben denselben Inode-Wert wie der eigentliche Dateiinhalt. Das Entfernen eines Links wirkt sich nicht auf andere Links aus und zeigt immer noch den Inhalt der Datei an.

Soft Link vs. Hard Link: Vergleichstabelle

Zusammenfassung von Soft Link vs. Hard Link

Kurz gesagt, sowohl für Softlinks als auch für Hardlinks ist es möglich, dass mehr als ein Dateiname auf die gleiche Datei an einem anderen Ort verweist. Der Unterschied besteht jedoch darin, wie sie sich verhalten, wenn der Quelllink aus dem System entfernt wird. Ein Hardlink benötigt weniger Platz als ein Softlink, aber alle Änderungen, die an dem Hardlink vorgenommen werden, werden letztendlich in der Originaldatei angezeigt, wohingegen Änderungen am Softlink keine Auswirkungen auf die Originaldatei haben. Eine Softlink-Verknüpfung ist wie eine Verknüpfungsfunktion des Windows-Betriebssystems, die als Alias ​​verwendet wird, um auf die Originaldatei oder das Originalverzeichnis zu verweisen, während eine Hardlink-Verknüpfung einer Replik der Originaldatei ähnelt, die zwei Dateien im gleichen Dateisystem miteinander verbindet.