Symlink-Lernprogramm unter Linux – Erstellen und Entfernen eines symbolischen Links
Ein Symlink (auch als symbolischer Link bezeichnet) ist ein Dateityp unter Linux, der auf eine andere Datei oder einen Ordner auf Ihrem Computer verweist . Symlinks ähneln Verknüpfungen in Windows.
Einige Leute nennen Symlinks „Softlinks“ – eine Art Link in Linux / UNIX-Systemen – im Gegensatz zu „Hardlinks“.
Unterschied Zwischen einem Softlink und einem Hardlink
Softlinks ähneln Verknüpfungen und können auf eine andere Datei oder ein anderes Verzeichnis in einem beliebigen Dateisystem verweisen.
Hardlinks sind auch Verknüpfungen für Dateien und Ordner, aber ein fester Link kann nicht für einen Ordner oder eine Datei in einem anderen Dateisystem erstellt werden.
Sehen wir uns die Schritte zum Erstellen und Entfernen eines Symlinks an. Wir werden auch sehen, welche Links beschädigt sind und wie man sie löscht.
So erstellen Sie einen Symlink
Die Syntax zum Erstellen eines Symlinks lautet:
ln
ist der Verknüpfungsbefehl. Das Flag -s
gibt an, dass der Link weich sein soll. -s
kann auch als -symbolic
eingegeben werden.
Standardmäßig ist ln
erstellt feste Links. Das nächste Argument ist path to the file (or folder)
, das Sie verknüpfen möchten. (Das heißt, die Datei oder der Ordner, für die Sie eine Verknüpfung erstellen möchten.)
Und das letzte Argument ist die path to link
selbst (die Verknüpfung).
So erstellen Sie einen Symlink für eine Datei – Beispielbefehl
Nachdem Sie diesen Befehl ausgeführt haben, können Sie auf die /home/james/transactions.txt
mit trans.txt
. Jede Änderung an trans.txt
wird auch in der Originaldatei übernommen.
Beachten Sie, dass mit diesem Befehl die Linkdatei trans.txt
in Ihrem aktuellen Verzeichnis. Sie können auch eine verknüpfte Datei in einem Ordner erstellen:
In Ihrem aktuellen Verzeichnis muss sich bereits ein Verzeichnis mit dem Namen „my-stuffs“ befinden. Wenn nicht, wird der Befehl einen Fehler auslösen.
So erstellen Sie einen Symlink für einen Ordner – Beispielbefehl
Ähnlich wie oben würden wir Folgendes verwenden:
Dies würde einen verknüpften Ordner namens „james“ erstellen, der den Inhalt von /home/james
enthält. Änderungen an diesem verknüpften Ordner wirken sich ebenfalls aus den ursprünglichen Ordner.
So entfernen Sie einen Symlink
Bevor Sie einen Symlink entfernen möchten, möchten Sie möglicherweise bestätigen, dass eine Datei oder ein Ordner ein Symlink ist, damit Sie Manipulieren Sie Ihre Dateien nicht.
Eine Möglichkeit, dies zu tun, ist:
Wenn Sie diesen Befehl auf Ihrem Terminal ausführen, werden die Eigenschaften der Datei angezeigt. Wenn das erste Zeichen ein kleiner Buchstabe L („l“) ist, bedeutet dies im Ergebnis, dass die Datei / der Ordner ein Symlink ist.
Sie würden auch einen Pfeil sehen (- >) am Ende, das die Datei / den Ordner angibt, auf die der Simlink verweist.
Es gibt zwei Methoden, um einen Symlink zu entfernen:
Verwenden von Unlink to Entfernen eines Symlinks
Die Syntax lautet:
Dadurch wird der Symlink gelöscht, wenn der Vorgang erfolgreich ist.
Auch wenn der Symlink die Form eines Ordners hat, hängen Sie nicht „/“ an, da Linux davon ausgeht, dass es sich um ein Verzeichnis handelt und unlink
Verzeichnisse nicht löschen kann.
So verwenden Sie rm zum Entfernen eines Symlinks
Wie wir gesehen haben, ist ein Symlink nur eine andere Datei oder ein Ordner, der auf eine Originaldatei oder einen Originaldatei zeigt. Um diese Beziehung zu entfernen, können Sie die verknüpfte Datei entfernen.
Daher lautet die Syntax:
Zum Beispiel:
Beachten Sie, dass der Versuch, rm james/
auszuführen, zu einem Fehler führen würde, da Linux davon ausgeht, dass „james /“ ein Verzeichnis ist. Dies würde andere Optionen wie r
und f
erfordern. Aber das ist nicht das, was wir wollen. Ein Symlink kann ein Ordner sein, aber wir beschäftigen uns nur mit dem Namen.
Der Hauptvorteil von rm
gegenüber unlink
bedeutet, dass Sie mehrere Symlinks gleichzeitig entfernen können, wie Sie es mit Dateien tun können.
So finden und löschen Sie defekte Links
Defekte Links tritt auf, wenn die Datei oder der Ordner, auf die ein Symlink verweist, den Pfad ändert oder gelöscht wird.
Wenn beispielsweise „transaction.txt“ von /home/james
nach /home/james/personal
, der Link „trans.txt“ wird unterbrochen. Jeder Versuch, auf die Datei zuzugreifen, führt zu dem Fehler „Keine solche Datei oder kein solches Verzeichnis“. Dies liegt daran, dass der Link keinen Inhalt von enthält
Wenn Sie defekte Links entdecken, können Sie die Datei leicht löschen. Eine einfache Möglichkeit, defekte Symlinks zu finden, ist:
Dadurch werden alle fehlerhaften Symlinks im Verzeichnis james
aufgelistet – von Dateien über Verzeichnisse bis hin zu Unterverzeichnissen.
Wenn Sie die Option -delete
übergeben, werden sie wie folgt gelöscht:
Zusammenfassung
Symbolische Verknüpfung ist eine interessante Funktion von Linux- und UNIX-Systemen.
Sie können leicht zugängliche Symlinks erstellen, um auf eine Datei oder einen Ordner zu verweisen, auf die sonst nicht bequem zugegriffen werden kann. Mit etwas Übung werden Sie verstehen, wie diese auf einer intuitiven Ebene funktionieren, und sie werden Sie bei der Verwaltung von Dateisystemen viel effizienter machen.