Symbolischen Link erstellen

 

  Ein Symbolischer Link (auch Symlink oder Soft-Link genannt) ist ein Verzeichniseintrag in einem Dateisystem, der auf einen anderen Verzeichniseintrag verweist. Dabei kann es sich sowohl um Verweise auf Verzeichnisse als auch Dateien handeln.  
     
  Beispiel:  
     
  linuxwiki.de:~# cd /usr/src
linuxwiki.de:/usr/src# ln -s linux-2.4.18 linux
linuxwiki.de:/usr/src# ls -l linux
lrwxrwxrwx 1 root root 9 Mär 24 12:26 linux -> linux-2.4.18
 
     
  Tipp:  
     
  Wer sich nicht die Argumentreihenfolge merken kann, merkt sich einfach, dass es wie beim cp-Befehl ist  
     
  Wenn es symbolische Links gibt, gibt es natürlich auch nicht-symbolische, die heißen dann Hard-Links  
     
  Tipp:  
     
  Um existente Links zu überschreiben, verwendet man die Optionen -nfs (no-follow, force,overwrite, symbolic). Angenommen, "foo" verweist auf das Directory "bar", und wir wollen, daß "foo" auf "baz" verweist, dann erzeugt nämlich das Kommando "ln -s baz foo" einen neuen Link in "bar" ("bar/baz ==> baz"). "ln -nfs bar foo" dagegen verbiegt den Link auf "baz", wie gewünscht ("foo ==> baz")  
     
  Tipp:  
     
  readlink liefert die Datei, auf die der Link zeigt (das gibt es übrigens auch als Funktion für Programme)  
     
  Tipp:  
     
  Programmierer können mit der Funktion "lstat" die Daten eines Links abfragen. "stat" verfolgt nämlich den Link automatisch und liefert die Daten des Eintrags, auf den ein Link verweist  
     
  Anmerkung:  
     
  Unter Windows-Dateisystemen gibt es sowas bisher nicht, deshalb musste dort auch eine Krücke via *.lnk-Dateien gemacht werden, um etwas ähnliches zu erreichen. Allerdings ermöglicht das frei erhältliche Programm "Junction" Windows-Nutzern die Verwendung von Symlinks auf NTFS-Partitionen wenigstens für Verzeichnisse. Weitere Infos: https://technet.microsoft.com/de-de/sysinternals/bb896768.aspx