macOS-Praxis: Aliasse und Verweise anlegen und verwenden
Nach dem Start begrüßt der Mac die Anwender mit dem Schreibtisch. Dieser simuliert das physische Vorbild in einem Aspekt erstaunlich gut: Er stellt eine bequeme Ablagefläche dar, die bei zu exzessivem Gebrauch ihre Übersichtlichkeit einbüßt. Um Dateien strukturiert abzulegen, aber trotzdem schnell wiederzufinden, bietet der macOS-Finder die Möglichkeit, Aliasse zu erzeugen – sie verweisen auf Dateien oder Ordner, die anderswo residieren. So erleichtern sie in der grafischen Bedienoberfläche die Arbeit mit verschachtelten Dateistrukturen. Über das Terminal stehen weitere Formen der Verlinkung mit speziellen Vorteilen bereit, um Dateien zu verknüpfen.
Der Finder bietet lediglich das Anlegen von Aliassen an; dafür ist diese Methode besonders nutzerfreundlich. Wer das Verschieben von Dateien per Drag & Drop gewohnt ist, erzeugt ein Alias mit derselben Methode – und hält dabei lediglich die
- und die
-Taste gedrückt. Zieht man auf diese Weise beispielsweise eine Datei auf den Schreibtisch, signalisiert ein gebogener Pfeil an der unteren linken Ecke des bewegten Dokuments, dass am Zielort ein Alias entstehen wird. Alternativ erzeugen Sie mit der Tastenkombination
+A zunächst ein Alias an, um es danach frei bewegen (und anschließend umbenennen) zu können.
Hält man beim Klicken & Ziehen einer Datei oder eines Ordners die Befehls- und die Wahl-Taste gedrückt, entsteht am Zielort ein Alias.
Aliase denken mitEin großer Vorteil von Aliassen ist, dass sie sich dynamisch anpassen: Verschiebt man die Originaldatei, beispielsweise in einen Unterordner, funktioniert ein Alias weiterhin. So kann man ohne Probleme entscheiden, die Dateihierarchie umzustellen oder zu verfeinern, ohne Sorge zu haben, dass danach die Verweise nicht mehr funktionieren. Ein Nachteil besteht aber auch: Sie haben keine Entsprechung auf der Kommandozeile. Wer beispielsweise in Shell-Skripten mit Verweisen arbeiten möchte, stoße auf Probleme, erklärt Howard Oakley im Blog-Beitrag "
Links, aliasses and the decline of paths".
Symlink und HardlinkGlücklicherweise existiert für das Terminal ein ähnlicher Mechanismus. Allerdings teilt er sich in zwei Formen auf: Symbolic Links (Symlinks) und Hardlinks. Man erzeugt sie mit dem Kommandozeilenbefehl "ln". Darauf folgen der Pfad zur Originaldatei, danach (nach einem Leerzeichen) die neue Hardlink-Datei, ebenfalls in Pfadschreibweise. Mit dem folgenden Befehl legen Sie beispielsweise einen Hardlink zur Datei "Beispiel.txt" im Dokumente-Ordner auf dem Schreibtisch an:
ln ~/Documents/Beispiel.txt ~/Desktop/Beispiel-Hardlink.txt
Wer stattdessen einen Symlink anlegen will, schiebt lediglich den Eintrag "-s" hinter den ln-Befehl:
ln -s ~/Documents/Beispiel.txt
~/Desktop/Beispiel-Symlink.txt
Um ein Finder-Objekt in der richtigen Schreibweise ins Terminal zu bekommen, ziehen Sie es einfach aufs Terminalfenster – dann schreibt sich der Pfad an der Position der Einfügemarke. Das gelingt mit Dateien ebenso wie Ordnern. Alternativ führen Sie einen Sekundärklick bei gedrückter
-Taste aus und wählen "[Dateiname] als Pfad kopieren" aus dem Kontextmenü.
Symlink sieht nur so aus wie AliasDie neu angelegten Dateien sind auch im Finder sichtbar. Ein Hardlink sieht dabei aus wie die Ursprungsdatei, während Symlinks denselben Pfeil in der unteren linken Ecke wie Aliasse aufweisen. Der Unterschied offenbart sich, wenn die Originaldatei verschoben wird: Während Hardlink und Alias weiterhin funktionieren, provoziert der Doppelklick auf Symlinks eine Fehlermeldung: Das Original wurde nicht gefunden.
Ein Symlink funktioniert nur, wenn das Original am selben Ort in der Dateihierarchie bleibt.
Ordnerhierarchie versus inodeAuch wenn sowohl Hard- als auch Symlink über den Verzeichnisnamen des Originals eingerichtet werden, verwendet der Hardlink daraufhin nicht den Ordnernamen als Ziel, sondern stattdessen die einmalige Identifikation der jeweiligen Datei (intern als inode bezeichnet). Darum findet ein Hardlink sein Pendant, selbst wenn es verschoben wurde. Aliasse verwenden hingegen eine Kombination aus inode und (stets aktuell gehaltener) Dateihierarchie. Alle drei Methoden versagen allerdings, wenn das Original auf ein anderes Laufwerk verschoben wird: Aliasse, Hard- und Symlinks beziehen sich stets auf dasselbe Volume.