Gabel (Dateisystem) – Wikipedia

before-content-x4

In einem Computer-Dateisystem a Gabel ist ein Datensatz, der einem Dateisystemobjekt zugeordnet ist. Dateisysteme ohne Gabeln erlauben nur einen einzigen Datensatz für den Inhalt, während Dateisysteme mit Gabeln mehrere solcher Inhalte zulassen. Jede nicht leere Datei muss mindestens einen Fork haben, häufig vom Standardtyp, und je nach Dateisystem kann einer Datei ein oder mehrere andere Forks zugeordnet sein, die wiederum Primärdaten enthalten können, die in die Datei integriert sind, oder nur Metadaten .

nicht wie erweiterte AttributeGabeln, eine ähnliche Dateisystemfunktion, die normalerweise eine feste Größe hat, können eine variable Größe haben, möglicherweise sogar größer als die Primärdatengabel der Datei. Die Größe einer Datei ist die Summe der Größen jeder Gabel.

Alternativen[edit]

Auf Dateisystemen ohne Gabeln können stattdessen mehrere separate Dateien verwendet werden, die miteinander verknüpft sind, insbesondere Sidecar-Dateien für Metadaten. Die Verbindung zwischen diesen Dateien wird jedoch nicht automatisch vom Dateisystem beibehalten, sondern muss von jedem Programm verarbeitet werden, das mit Dateien arbeitet. Eine andere Alternative ist eine Containerdatei, in der zusätzliche Daten in einem bestimmten Dateiformat gespeichert werden, oder eine Archivdatei, in der mehrere Dateien und Metadaten in einer Datei (in einem einzigen Zweig) gespeichert werden können. Dies erfordert, dass Programme die Container- oder Archivdatei und nicht die Dateisystemverarbeitungsgabeln verarbeiten. Diese Alternativen erfordern zusätzliche Arbeit von Programmen, die die Daten verwenden, profitieren jedoch von der Portabilität auf Dateisysteme, die keine Gabeln unterstützen.

Implementierungen[edit]

Apfel[edit]

Dateisystemgabeln sind mit Apples Hierarchical File System (HFS) verknüpft.[1] Apples HFS und das ursprüngliche Apple Macintosh-Dateisystem MFS ermöglichten es einem Dateisystemobjekt, zwei Arten von Gabeln zu haben: eine Datengabelung und eine Ressourcengabelung.

Der Ressourcengabel wurde entwickelt, um nicht kompilierte Daten zu speichern, die von der grafischen Benutzeroberfläche (GUI) des Systems verwendet werden, z. B. lokalisierbare Textzeichenfolgen, das vom Finder zu verwendende Dateisymbol oder die mit einer Anwendung verknüpften Menüs und Dialogfelder .[2] Die Funktion war jedoch sehr flexibel, sodass zusätzliche Verwendungszwecke gefunden wurden, z. B. das Aufteilen eines Textverarbeitungsdokuments in Inhalt und Präsentation und das Speichern jedes Teils in separaten Ressourcen. Da kompilierter Softwarecode auch in einer Ressource gespeichert wurde, bestanden Anwendungen häufig nur aus einer Ressourcengabelung und keiner Datengabelung.

Eine der dunkelsten Funktionen von HFS + ist, dass eine Datei zusätzlich zu den herkömmlichen Daten- und Ressourcengabeln eine beliebige Anzahl von benutzerdefinierten “benannten Gabeln” aufweisen kann. Diese Funktion wurde weitgehend nicht verwendet, da Apple sie unter Mac OS 8.1-10.3.9 nie unterstützt hat. Ab 10.4 wurde eine teilweise Implementierung durchgeführt, um die erweiterten Inline-Attribute von Apple zu unterstützen.

Bis Mac OS X 10.4 riskieren Benutzer, die die in Mac OS X enthaltenen Unix-Befehlszeilendienstprogramme (z. B. tar) ausführen, Datenverlust, da die Dienstprogramme nicht aktualisiert wurden, um die Ressourcengabeln von Dateien zu verarbeiten.[3]

Novell[edit]

Ab 1985 wurden Novell NetWare File System (NWFS) und sein Nachfolger Novell Storage Services (NSS) von Grund auf so konzipiert, dass sie verschiedene Methoden zum Speichern der Metadaten einer Datei verwenden. Einige Metadaten befinden sich in Novell Directory Services (NDS), andere in der Verzeichnisstruktur auf der Festplatte und andere, wie Novell es nennt, in “mehreren Datenströmen” mit der Datei selbst. Mit mehreren Datenströmen können Macintosh-Clients auch eine Verbindung zu NetWare-Servern herstellen und diese verwenden.

Microsoft[edit]

NTFS, das mit Windows NT 3.1 eingeführte Dateisystem, unterstützt Dateisystemgabeln, die als alternative Datenströme (ADS) bezeichnet werden.[4]ReFS, ein neues Dateisystem, das mit Windows Server 2012 eingeführt wurde, unterstützte ADS ursprünglich nicht.[5][6][7] In Windows 8.1 64-Bit und Server 2012 R2 wurde ReFS jedoch Unterstützung für ADS mit einer Länge von bis zu 128 KB hinzugefügt.[8]

ADS sollte ursprünglich die Kompatibilität mit vorhandenen Betriebssystemen verbessern, die Gabeln unterstützen.[citation needed] Ein Computerprogramm kann angewiesen werden, ein ADS zu öffnen, indem der Name des ADS nach einem Doppelpunkt (:) nach dem Dateipfad angegeben wird.[9] Trotz der Unterstützung ignorieren die meisten Programme, einschließlich Windows Explorer und des Befehls dir (vor Windows Vista), ADS. Windows Explorer kopiert ADS und warnt, wenn das Zieldateisystem diese nicht unterstützt, sondern nur die Größe des Hauptstroms berechnet und die Streams einer Datei oder eines Ordners nicht auflistet. Der Befehl dir in Windows Vista unterstützt das Anzeigen von ADS.[10]Windows PowerShell v3.0 und höher unterstützt die Bearbeitung von ADS.[11]

Verwendet[edit]

Windows 2000 verwendet ADS zum Speichern von Miniaturansichten in Bilddateien und zum Speichern von Zusammenfassungsinformationen (wie Titel und Autor) in einer beliebigen Datei, ohne den Hauptdatenstrom zu ändern.[12][13] Unter Windows XP erkannte Microsoft, dass ADS anfällig für Verluste ist, wenn die Dateien, die sie enthalten, von NTFS-Volumes verschoben werden. Daher speichert Windows XP sie im Hauptstrom, wann immer das Dateiformat dies unterstützt.[12] Windows Vista hat die Unterstützung für das Hinzufügen von Zusammenfassungsinformationen eingestellt, da Microsoft entschieden hat, dass diese für ADS zu sensibel sind.[14] Die Verwendung von ADS für andere Zwecke wurde jedoch nicht eingestellt. In Service Pack 2 für Windows XP wurde der Attachment Execution Service eingeführt, der Details zur Herkunft heruntergeladener Dateien in einem aufgerufenen ADS speichert Zonenkennung, um Benutzer vor heruntergeladenen Dateien zu schützen, die ein Risiko darstellen können.[15]Internet Explorer und Windows 8 haben diese Funktion über SmartScreen erweitert.[16] Internet Explorer verwendet ADS auch zum Speichern von Favoriten in Internet-Verknüpfungsdateien.[9]

Sonne[edit]

In Solaris Version 9 und höher können Dateien Gabeln haben. Gabeln werden gerufen erweiterte Attribute in Solaris, obwohl sie nicht in der üblichen Bedeutung von “erweitertem Attribut” liegen. Die maximale Größe eines erweiterten Attributs vom Typ Solaris entspricht der maximalen Größe einer Datei. Sie werden auf dieselbe Weise wie Dateien gelesen und geschrieben. Intern werden sie tatsächlich wie normale Dateien gespeichert und abgerufen, sodass sich ihr Besitz und ihre Berechtigungen von denen der übergeordneten Datei unterscheiden können. Unterverzeichnisse sind administrativ[clarification needed] deaktiviert, daher dürfen ihre Namen keine “/” Zeichen enthalten.

Erweiterte Attribute in Network File System Version 4 ähneln erweiterten Attributen im Solaris-Stil.

Mögliche Sicherheits- und Datenverlustrisiken[edit]

Wenn ein Dateisystem verschiedene Gabeln unterstützt, sollten die Anwendungen diese kennen, da sonst Sicherheitsrisiken auftreten können. Der Hauptverursacher solcher Probleme besteht darin, dass ältere Software auf Daten zugreifen kann, ohne dass entsprechende Shims vorhanden sind.[citation needed]

Wenn die verschiedenen Systemdienstprogramme (Festplatten-Explorer, Antivirensoftware, Archivierer usw.) die verschiedenen Gabeln nicht kennen, können die folgenden Probleme auftreten:

  • Der Benutzer wird niemals das Vorhandensein einer alternativen Verzweigung oder die Gesamtgröße der Datei, nur der Hauptdatengabel, erfahren.
  • Computerviren können sich unter Windows in alternativen Gabeln verstecken und werden nie erkannt, wenn die Antivirensoftware keine Gabeln kennt.
  • Daten können verloren gehen, wenn Dateien über gabelunabhängige Kanäle wie E-Mail, Dateisysteme ohne Unterstützung für Gabeln oder sogar beim Kopieren von Dateien zwischen Dateisystemen mit Forks-Unterstützung gesendet werden, wenn das Programm, das die Kopie erstellt hat, Forks nicht unterstützt oder wenn Komprimieren von Dateien mit Software, die keine Gabeln unterstützt.

Siehe auch[edit]

Verweise[edit]

Externe Links[edit]


after-content-x4