Dateiverknüpfugen unter OS X
MacTechNews erklärt Fachbegriffe, Teil 12
Mit System 7 sind den Mac Benutzern die sog. Alias-Dateien geschenkt worden. An deren Verhalten hat sich auch bis hin zu OS X nichts geändert. Sie bilden eine Verknüpfung zu einer Datei, einem Ordner oder auch einem kompletten Volume. Über den Alias lässt sich das Original jederzeit aufrufen.
Ganz Mac-typisch, besitzen die Alias-Dateien eine gewisse Intelligenz. Verschiebt man die Originaldatei an einen anderen Ort, so wandert die Verknüpfung mit. Das heißt, der Alias "findet" die Originaldatei nach wie vor. Auch kann man die Originaldatei umbenennen, ohne das die Verbindung zum Alias verloren geht. Das liegt daran, dass ein Alias nicht (allein) auf eine absolute Pfadangabe vertraut, sondern die Originaldatei anhand ihrer eindeutigen ID-Nummer aufspürt.
Würde man nun die Originaldatei durch eine neue Datei gleichen Namens ersetzen, dann müsste die Verbindung zum Alias eigentlich gebrochen werden, da die neue Datei ja eine andere ID bekommt. Tatsächlich ist dem aber nicht so. Wenn die ID der Originaldatei nicht mehr gefunden werden kann, prüft das System nach, ob sich unter dem (ebenfalls im Alias gespeicherten) Pfad eine Datei gleichen Namens befindet. Ein Alias ist also quasi "unkaputtbar".
So weit, so gut. Nur können viele UNIX-Anwendungen mit den Mac-typischen Alias-Dateien leider nichts anfangen. Versucht man z.B. mit "The GIMP" oder "Open Office" einen Alias zu öffnen, hält die Anwendung den Verweis für eine leere Datei, anstatt der Verbindung zur Originaldatei zu folgen und diese zu öffnen.
In der UNIX Welt gibt es keine Alias-Datein, wie der Ur-Mac sie kennt. Dort gibt es Links. Zum Glück kennt OS X die aber auch. Ein "symbolischer Link" verhält sich fast so wie ein Alias. Das heißt, er kann auf eine Datei, ein Ordner, oder auch ein Volume verweisen. Allerdings ist ein Link nicht ganz so intelligent wie ein Alias. Da ein symbolischer Link allein auf der absoluten Pfadangabe zum Original beruht, kann die Verbindung leicht gebrochen werden. Wird das Original verschoben oder umbenannt, kann es über den Link nicht mehr erreicht werden.
Neben den symbolischen Links gibt es aber auch noch sog. "harte Links". Um die besser verstehen zu können, muss man sich folgendes kurz vor Augen führen: Das Datei-Icon das im Finder zu sehen ist, ist nicht die Datei. Es ist eine grafische Repräsentation eines Eintrages in der Verzeichnisstruktur der Festplatte. Alias-Dateien und symbolische Links sind Verweise auf diesen Eintrag. Harte Links aber sind keine Verweise, sondern zusätzliche Einträge in der Verzeichnisstruktur.
Erstellt man also einen harten Link zu einer Datei, dann erhält diese Datei einen zweiten Eintrag im Inhaltsverzeichnis der Festplatte. Sie befindet sich also an "zwei Orten gleichzeitig". Dieser zweite Eintrag erbt alle Attribute des Original-Eintrags. So hat der harte Link z.B. das gleiche Erstellungsdatum, wie die Originaldatei und auch die gleiche Dateigröße. Tatsächlich aber nimmt der Link nicht mehr Platz in Anspruch als ein Alias. Er ist also keineswegs eine Kopie der Originaldatei.
Ändert man den Namen des harten Links, so ändert sich automatisch auch der Name des Original-Eintrags, und umgekehrt. Kein Wunder, denn beide Einträge verweisen ja auf dieselbe Datei - und die kann nicht zwei unterschiedliche Namen haben. Verschiebt man die über einen harten Link referenzierte Datei, so hat der Link keine Probleme der Datei "zu folgen". Die Daten auf der Festplatte sind ja nicht verschoben worden, sondern lediglich der Ort innerhalb der Verzeichnisstruktur.
Wenn jedoch die Originaldatei gelöscht oder mit einer anderen Datei gleichen Namens überschrieben wird, beginnt es spannend zu werden. Der harte Link funktioniert immer noch! Er verweist nach wie vor auf die ursprüngliche Datei und öffnet diese auch problemlos. Anders ausgedrückt: Wenn die "Originaldatei" gelöscht wird, ist sie nicht wirklich weg. Gelöscht wir lediglich der erste Verzeichniseintrag dieser Datei. Da aber noch ein weiterer Verzeichniseintrag besteht -der harte Link- bleibt die Datei solange bestehen, bis auch der letzte Verzeichniseintrag gelöscht wird.
Für harte Links bestehen allerdings auch Einschränkungen: Sie dürfen nur auf Dateien angewandt werden - nicht auf Verzeichnisse und Volumes. Außerdem muss der Link innerhalb des gleichen Dateisystems (logisches Laufwerk) erstellt werden wie die Originaldatei. Zudem eignen sich harte Links nicht für Dateien, die Verweise zu Elementen beinhalten, die an gleicher Stelle wie die Datei selbst vermutet werden (z.B. index.html).
Wie erstelle ich nun symbolische und harte Links? Mit Bordmitteln ist das über das Terminal möglich. Der Befehl dazu lautet ’ln’ bzw. ’ln -s’ für symbolische Links. Einfacher geht’s mit der Freeware "SymbolicLinker". Die Kontext-Menü Erweiterung kann allerdings keine harten Links erzeugen. Wer die flexible Kontext-Menü Erweiterung "OMC" benutzt, kann sich die Befehle mit "OMCEdit" aber auch selber basteln.