Symlink Tutorial 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 Soft Link und einem Hard Link

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. Für einen Ordner oder eine Datei in einem anderen Dateisystem kann jedoch kein Hardlink erstellt werden.

Schauen wir uns die Schritte zum Erstellen und Entfernen eines Symlinks an. Wir werden auch sehen, was defekte Links sind und wie man sie löscht.

So erstellen Sie einen Symlink

Die Syntax zum Erstellen eines Symlinks lautet:

ln -s   

lnist der Link-Befehl. Das -sFlag gibt an, dass der Link weich sein soll. -skann auch als eingegeben werden -symbolic.

Standardmäßig lnerstellt der Befehl feste Links. Das nächste Argument ist, path to the file (or folder)dass 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 das path to linkSelbst (die Abkürzung).

So erstellen Sie einen Symlink für eine Datei - Beispielbefehl

ln -s /home/james/transactions.txt trans.txt 

Nachdem Sie diesen Befehl ausgeführt haben, können Sie auf das /home/james/transactions.txtmit zugreifen trans.txt. Jede Änderung an trans.txtwird auch in der Originaldatei wiedergegeben.

Beachten Sie, dass dieser Befehl oben die Linkdatei trans.txtin Ihrem aktuellen Verzeichnis erstellen würde . Sie können auch eine verknüpfte Datei in einem Ordner erstellen.

ln -s /home/james/transactions.txt my-stuffs/trans.txt 

In Ihrem aktuellen Verzeichnis muss sich bereits ein Verzeichnis mit dem Namen "my-stuffs" befinden. Andernfalls wird der Befehl einen Fehler auslösen.

So erstellen Sie einen Symlink für einen Ordner - Beispielbefehl

Ähnlich wie oben würden wir verwenden:

ln -s /home/james james 

Dies würde einen verknüpften Ordner namens 'james' erstellen, der den Inhalt von enthält /home/james. Alle Änderungen an diesem verknüpften Ordner wirken sich auch auf den ursprünglichen Ordner aus.

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 Ihre Dateien nicht manipulieren.

Eine Möglichkeit, dies zu tun, ist:

ls -l  

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.

Außerdem wird am Ende ein Pfeil (->) angezeigt, der die Datei / den Ordner angibt, auf die der Simlink zeigt.

Es gibt zwei Methoden, um einen Symlink zu entfernen:

Verwenden von Unlink zum Entfernen eines Symlinks

Die Syntax lautet:

unlink  

Dies löscht den Symlink, wenn der Prozess 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 unlinkkeine Verzeichnisse löschen können.

So verwenden Sie rm, um einen Symlink zu entfernen

Wie wir gesehen haben, ist ein Symlink nur eine andere Datei oder ein Ordner, der auf eine Originaldatei oder einen Originaldatei verweist. Um diese Beziehung zu entfernen, können Sie die verknüpfte Datei entfernen.

Daher lautet die Syntax:

rm  

Zum Beispiel:

rm trans.txt rm james 

Beachten Sie, dass ein Versuch zu rm james/einem Fehler führen würde, da Linux davon ausgeht, dass 'james /' ein Verzeichnis ist, für das andere Optionen wie rund erforderlich sind f. Aber das wollen wir nicht. Ein Symlink kann ein Ordner sein, aber wir beschäftigen uns nur mit dem Namen.

Der Hauptvorteil von rmover unlinkbesteht darin, dass Sie mehrere Symlinks gleichzeitig entfernen können, wie dies bei Dateien der Fall ist.

So finden und löschen Sie defekte Links

Unterbrochene Links treten 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/jamesnach /home/james/personalverschoben wird, wird der Link 'trans.txt' 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 eigenen Inhalt hat.

Wenn Sie defekte Links entdecken, können Sie die Datei einfach löschen. Ein einfacher Weg, um defekte Symlinks zu finden, ist:

find /home/james -xtype l 

Dadurch werden alle fehlerhaften Symlinks im jamesVerzeichnis aufgelistet - von Dateien über Verzeichnisse bis hin zu Unterverzeichnissen.

Wenn Sie die -deleteOption übergeben, werden sie wie folgt gelöscht:

find /home/james -xtype l -delete 

Einpacken

Symbolische Verknüpfungen sind ein interessantes Merkmal 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.