GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Anleitung zum Hinzufügen symbolischer Linux-Links

Als ich vor Jahren zum ersten Mal mit Linux anfing und die Kleidung eines jüngeren Mannes trug, war das Konzept symbolischer Links und ihre Verwendung in der Linux-Umgebung eine der schwierigsten Dinge für mich, Linux zu verstehen.

Jetzt, fast zwei Jahrzehnte später, verstehe ich es endlich. In diesem Artikel werde ich versuchen, genau zu erklären, was ein symbolischer Link ist, die Unterschiede zwischen einem Hardlink und einem symbolischen Link oder Symlink, wie man beide Typen erstellt und entfernt und welchen Wert sie in der Linux-Umgebung haben.

Was ist ein Hardlink?

In Linux und Linux-ähnlichen Betriebssystemen ist praktisch alles eine Datei. Vor diesem Hintergrund ist eine Datei unter Linux nur ein Link zu einem Inode. Ein Inode ist eine Datenstruktur, die alles über eine Datei getrennt von ihrem Namen und dem eigentlichen Inhalt hält.

Einige Linux-Benutzer stellen sich einen Hardlink gerne als zusätzlichen Namen für eine vorhandene Datei vor. Wenn Sie also einen festen Link erstellen, verknüpfen Sie einfach zwei oder mehr Dateinamen mit demselben Inode.

Für Benutzer, die mit Windows besser vertraut sind, ist ein Linux-Hardlink ähnlich wie ein Windows-Hardlink, den Sie mit dem DOS-Befehl erstellen:

C:/> mklink /h "link" "target"

Das sieht nach einem problematischen Konzept aus. Mal sehen, ob wir im Linux-Terminal einen Hardlink erstellen; es macht die Dinge klarer.

So erstellen Sie einen Hardlink

Wir verwenden das ln Befehl zum Erstellen von Linkdateien in Linux. Das Format für den ln-Befehl zum Erstellen eines festen Links ist:

# ln "source" "link"
# ln "/path/to/source" "/path to link"
# ln "target" "link"
# ln "target" "directory"

Wobei „Quelle“ eine vorhandene Datei ist und „Link“ die zu erstellende Datei oder unser fester Link.

Im folgenden Beispiel gehen wir also zu

Erstellen Sie unsere „Quell“-Datei.

# echo 'This is the FOSS Linux Hard Link example' > FOSS

Erstellen Sie unsere „Link“-Datei.

# ln FOSS Linux

Listen Sie unsere erstellte „Quell“-Datei (FOSS) und unsere „Link-Datei“ (Linux) auf.

# ls -li FOSS Linux

Wenn Sie sich unsere Ausgabe unserer ls ansehen Befehl können wir sehen, dass die Inodes übereinstimmen. Wir haben das -i verwendet Option speziell mit unserem ls-Befehl, damit wir die Inodes unserer Dateien sehen können, in diesem Fall 9448255 , für beide. Denken Sie daran, mit harten Links; wir „verknüpfen nur zwei oder mehr Dateinamen mit demselben Inode.“

Beachten Sie auch, dass die dritte Spalte unserer Ausgabe die Zahl 2 anzeigt . Das ist die Gesamtzahl der Hardlinks zu der Datei. Hier, 2 .

Beachten Sie, dass Sie keine festen Links für ein Verzeichnis erstellen können. So konnten Sie beispielsweise keinen festen Link erstellen, um auf das Verzeichnis /home/tut zu verweisen . Sie können auch keine festen Links für Verzeichnisse und Dateien auf einem anderen Dateisystem oder einer anderen Partition erstellen.

Was ist ein symbolischer Link?

Symbolische Links oder Symlinks (manchmal auch Softlinks genannt) waren für mich viel einfacher zu verdauen als harte Links. Um das Wesentliche eines symbolischen Links zu verstehen, denken Sie an eine Windows-Verknüpfung. Dass alles ein symbolischer Link ist, ist ein Zeiger (oder eine Verknüpfung) auf die eigentliche Datei. Im Gegensatz zu Hardlinks sind symbolische Links nicht zwei Dateien, die auf denselben Inode verweisen. Stattdessen ist der symbolische Link nur eine „Verknüpfung“ zur eigentlichen Datei.

Lassen Sie uns ein Beispiel für einen symbolischen Link erstellen und untersuchen, was ich meine.

So erstellen Sie einen symbolischen Link

Genau wie bei einem harten Link verwenden wir das ln Befehl zum Erstellen eines symbolischen Links. Nur um den symbolischen Link zu erstellen, verwenden wir das -s Qualifizierer (ln -s ), um anzugeben, dass der Link, den wir erstellen, ein symbolischer Link ist.

Lassen Sie uns einen symbolischen Link erstellen. Sie werden sich daran erinnern, wo wir vorhin mit unseren Hardlink-Dateien aufgehört haben. Darauf bauen wir auf.

Lassen Sie uns unsere symbolische Linkdatei erstellen.

# ln -s FOSS Is_Great

Jetzt sehen wir uns unsere Dateien an.

# ls -li FOSS Linux Is_Great

Betrachten wir unsere aktualisierte Ausgabe von unseren modifizierten ls Befehl können wir sehen, dass sich an unseren harten Links nichts geändert hat, aber unser symbolischer Link ist jetzt enthalten. Der Inode unserer neuen Datei unterscheidet sich von unseren beiden Hardlinks, und die zweite Spalte beginnt mit einem l . Das l gibt an, dass die Datei ein symbolischer Link ist. Sie können sehen, dass der neu erstellte symbolische Link (oder die Verknüpfung) auf die Datei verweist, für die er ein symbolischer Link ist. Hier, FOSS (Ist_Großartig> FOSS ).

Schlussfolgerung

Hoffentlich haben Sie nach dem Lesen unseres Artikels ein besseres Verständnis für Hardlinks und symbolische Links oder Symlinks. Wenn Sie Probleme haben, kann ich den ln-Mann nicht empfehlen Seite genug.

Sollten Sie Fragen haben, stellen Sie diese bitte in den Kommentaren unten und wir werden uns mit Ihnen in Verbindung setzen.


Linux
  1. So erstellen Sie harte und symbolische Links in Linux

  2. So erstellen Sie Soft- und Hardlinks in Linux

  3. Was sind Softlinks und Hardlinks im Linux-Dateisystem?

  4. Unterschied zwischen Softlinks und Hardlinks in Linux

  5. Umgebungsvariablen in symbolischen Links

So entfernen Sie symbolische Links unter Linux

So erstellen Sie symbolische Links unter Linux

Was sind symbolische Links in Linux? Wie erstellt man symbolische Links?

Der ln-Befehl unter Linux:Soft- und Hardlinks erstellen

Softlinks in Linux – Die vollständige Referenz

So erhalten Sie eine Liste symbolischer Links unter Linux