Was sind 'Aliase' - technisch gesprochen

Dieses Thema im Forum "Mac OS X" wurde erstellt von uwolf, 08.11.2006.

  1. uwolf

    uwolf Thread Starter MacUser Mitglied

    MacUser seit:
    26.09.2006
    Beiträge:
    420
    Zustimmungen:
    10
    Hallo.

    Unter OSX kann ich mit Hilfe des Finders einen Alias auf eine andere Datei anlegen. Ich dachte zuerst das wäre nichts weiter als ein symbolischer Link, ist ja ein Unix-Derivat darunter.

    Schaut man den Alias aber mit ls -l an, so ist er eine normale Datei mit 0 Byte Größe. Ein less zeigt konsequenterweise nichts an.

    Also, was ist den nun ein Alias ? Vielleicht ein Bestandteil des verwendeten Dateisystems, mit dem aber ls nichts anfangen kann ?

    Würde mich interessieren.

    Ach ja, die Antwort ist vielleicht in dem Buch 'Mac OS X Internals: A Systems Approach, by Amit Singh', http://www.osxbook.com.
    Kennt das jemand ?


    Gruß
    Uwe
     
  2. tau

    tau MacUser Mitglied

    MacUser seit:
    06.01.2004
    Beiträge:
    9.804
    Zustimmungen:
    185
    Ohne wirklich eine Antwort zu haben:
    Diese Aliase gab es schon im klassischen Mac OS. Daher vermute ich ein Feature des HFS-Dateisystems. :)
     
  3. Konrad Zuse

    Konrad Zuse MacUser Mitglied

    MacUser seit:
    15.02.2006
    Beiträge:
    3.250
    Zustimmungen:
    223
    Verknüpfung?
     
  4. elastico

    elastico MacUser Mitglied

    MacUser seit:
    25.08.2004
    Beiträge:
    5.047
    Zustimmungen:
    77
    Das dürfte eine Datei sein in der steht, dass es eine Verknüpfung auf eine andere Datei ist.

    Es ist (leider?) kein symbolischer Link (so einen kann man IMHO nicht über das GUI erzeugen) sondern eben eine Stufe weniger.

    Einen symb.link kann man ja auch benutzen um eine Datei zu öffnen (also in einem Programm über Ablage-öffnen oder in einem Setting eine Datei wählen) Für das Programm ist es dann so, als hätte man die originale Datei gewählt und nicht einen link.

    Bei diesen Verknüpfungen ist das IMHO anders. Man kann sie im Finder nutzen um per Doppelklick die Datei oder das Programm zu öffnen. Aber man kann sie wohl nicht verwenden, um die mit ihr verknüpfte Datei über "Ablage - öffnen" zu öffnen etc. (wobei ich letzteres jetzt gerade nicht probieren kann - bin am Windows-Rechner :) - da geht es definitiv nicht)
     
  5. wegus

    wegus MacUser Mitglied

    MacUser seit:
    13.09.2004
    Beiträge:
    14.713
    Zustimmungen:
    1.348
    Unter (T)UNIX sind symlinks ja durchaus echte inodes, wenn auch keine Datei im klassischen Sinne.

    Beim Filesystem des MAC OS gehört ja zu jeder Datei auch ein Kontext-Bereich in dem Zusatzinformationen liegen ( etwa das Vorgabeprogramm zum öffnen der Datei,...). Zu diesem bereich hat der Benutzer direkt keinen Zugrif. es macht also durchaus Sinn Dateien mit 0 Byte zu erstellen um Information dazu imKontextbereich abzulegen. Sprich: hat zwar 0-Byte enthält aber trotzdem Info ;)
     
  6. asg

    asg MacUser Mitglied

    MacUser seit:
    21.10.2003
    Beiträge:
    1.009
    Zustimmungen:
    22
    Prinzipiell gibt es zwei Sorten von links, softlinks und hardlinks.
    Dabei zeigt der Soflink auf einen Pfad, soll heissen, verschiebt man die Zieldatei, funktioniert der softlink nicht mehr. Ein Hardlink hingegen zeigt auf die Inode der Zieldatei. Beim verschieben dieser (der Zieldatei) bleibt der hardlink intakt.

    In wie fern das nun auch exakt auf HFS+ zutrifft, kann ich nicht sagen. Unter FS wie UFS/UFS2, ext,... ist dies so wie beschrieben.
     
  7. Pingu

    Pingu MacUser Mitglied

    MacUser seit:
    04.08.2003
    Beiträge:
    4.894
    Zustimmungen:
    341
    Alias != BSD symbolic link
    Alias != BSD hard link

    In HFS und HFS+ haben alle Dateien einen Datenteil (data fork) und einen Metadatenteil (resource fork). Der Metadatenteil lässt sich normalerweise mit einem ls nicht anzeigen. Man muss ihn sich geziehlt anzeigen lassen, z.B. mit ls -l <datei>/rsrc. Den Inhalt kann man sich auch mit den üblichen Tools anzeigen lassen: cat <datei>/rsrc, strings <datei>/rsrc oder hexdump <datei>/rsrc. Dann siehst Du, dass in einem Alias alle relevanten Informationen nur im Metadatenteil gespeichert sind.

    Mir persönlich wäre es lieber wenn ein Alias == BSD symbolic link. Denn durch die jetzige Situation, kann man Aliase in der Shell nicht nutzen und symbolische Links im Finder nicht nutzen.

    Pingu
     
    Zuletzt bearbeitet: 08.11.2006
  8. below

    below MacUser Mitglied

    MacUser seit:
    15.03.2004
    Beiträge:
    13.297
    Zustimmungen:
    1.086
    Wie schon geschrieben, sind Alias Dateien eben Dateien (keine Links!), die es so schon unter System 7 gab. Ich kann mir vorstellen, dass Alias Dateien bald mal "deprecated" werden und dann irgendwann komplett gegen symlinks ausgetauscht werden.

    Alex
     
  9. sheep

    sheep MacUser Mitglied

    MacUser seit:
    21.03.2005
    Beiträge:
    1.221
    Zustimmungen:
    24
    Wie sich das mit Softlinks, Hardlinks und Aliasen genau verhält, kann man übrigens hier nachlesen:

    http://forums.macosxhints.com/showpost.php?p=257462&postcount=23

    Damit ist zwar noch nicht wirklich geklärt, was Aliase technisch sind, aber es ist jedenfalls so, dass die Datei nur scheinbar 0KB hat, die eigentlichen Infos stehen im Ressource Fork.

    Edit:Sorry, viel zu langsam, ich hätte den Thread zwischendurch mal aktualisieren sollen :)
     
  10. Andi

    Andi MacUser Mitglied

    MacUser seit:
    16.05.2002
    Beiträge:
    7.590
    Zustimmungen:
    664
    ...

    Hallo uwolf,

    soweit ich das verstanden habe, ist der Alias ein Finder bzw. OS eigenes "Ding".
    Hat mit dem Filesystem nur am Rande zu tun, weil dieses eben Resourceforks unterstützt.
    Der Alias verweist auf eine File-ID eine Nummer die jeder Datei zugewiesen wird. Darum kann man Ziel und Alias beliebig umbenennen und verschieben.
    Aufgelöst und Aktualisiert wird der Alias durch den Alias-Manager.

    Der kann noch etwas mehr. Zeigt der Alias auf eine Datei in einem DiskImage, mountet der Alias-Manager das DiskImage für Dich oder einen Server oder fordert Dich auf eine bestimmtes Volume einzulegen etc.

    Warum? Der Alias funktioniert doch am Besten von allen...

    Edit: Link vergessen http://developer.apple.com/documentation/mac/Files/Files-342.html#HEADING342-0

    Gruß Andi
     
Die Seite wird geladen...
Ähnliche Themen - Was sind 'Aliase'
  1. vsw
    Antworten:
    1
    Aufrufe:
    443
  2. Christoph.J
    Antworten:
    3
    Aufrufe:
    698
  3. flapappi
    Antworten:
    9
    Aufrufe:
    447
  4. dibro
    Antworten:
    18
    Aufrufe:
    1.486
  5. biiit
    Antworten:
    0
    Aufrufe:
    337

Diese Seite empfehlen