it-swarm.com.de

Kann und soll UDF als Festplattenformat verwendet werden?

Vor einiger Zeit habe ich UDF als Lösung für ein plattformübergreifendes Format für ein Laufwerk gesehen, das unter Linux, Mac OS X und Windows XP und höher verwendet wird.

Ich habe hier gesucht und nicht den gleichen Vorschlag gefunden (die meisten schlagen ntfs-3g vor, was anscheinend Geld kostet und auf einem Mac nicht vorinstalliert ist).

Meine Frage lautet also: Wie wird das richtig gemacht und hat das jemand gemacht? Haben Sie dann das Laufwerk gefüllt und einige Dateien gelöscht, um festzustellen, dass alles wie ein echtes R/W-Format funktioniert, obwohl es anscheinend in erster Linie ein einmal beschreibbares Format war?

Nennen Sie mich verrückt, aber ich würde es wirklich mögen, wenn das UDF-System auch automatisch bereitgestellt und vom angemeldeten Benutzer beschreibbar wäre. Was ich bisher versucht habe (udftools Formatierung wie von Kicsyromy erwähnt), geht diesen Wunsch nicht an.

31
dlamblin

Nein.

Wir sind zum Zeitpunkt dieser Antwort im Jahr 2015. Ich verwende OSX Yosemite, Ubuntu 14.10 und die technische Vorschau von Windows 10 für Unternehmen auf einem Mactel-Computer (Macmini 7,1).

Ich habe sowohl UDF als auch exFat ausprobiert. Ich benutze Ubuntu für die Entwicklung und benötige Unix-Berechtigungen.

Alle früheren Anleitungen gelten nicht mehr: UDF-Treiber wurden weiterentwickelt und alle Betriebssysteme akzeptieren eine UDF-Partition mit mehr Problemen und Instabilitäten, als ich nennen kann.

  • Unter Mac OS formatiertes UDF-Laufwerk: Kann unter Windows 10 nicht gemountet werden.
  • Unter Linux formatiertes UDF-Laufwerk: Kann unter Windows 10 nicht gemountet werden.
  • Unter Windows 10 formatiertes UDF-Laufwerk: Bereitstellen von Lese-/Schreibzugriff unter Linux, schreibgeschützt unter OSX.

In Windows können Sie jedoch beim Formatieren eines UDF-Volumes keine Blockgröße angeben. Infolgedessen weicht Ihre logische Blockgröße möglicherweise von der physischen Blockgröße für die Partition ab.

Ich bin nicht sicher, ob dies mit den Schwierigkeiten zu tun hat, die ich beim Einhängen von Lese-/Schreibzugriff auf OSX hatte. Nachdem ich jedoch eine bestimmte Anzahl von Dateien unter Linux gelöscht hatte, konnte ich das Laufwerk unter OSX nicht mehr einhängen.

Das System gerät in Kernel-Panik und stürzt in schändlicher Weise ab.

Dies und eine Vielzahl von Antworten zu diesem Thema deuten an dieser Stelle auf eine inkonsistente Unterstützung dieses Formats hin.

Es scheint, dass es Möglichkeiten gibt, ein NTFS -Volume zu verwenden, um ein Gleichgewicht zwischen den Funktionen eines modernen Dateisystems und Berechtigungen im Unix-Stil zu erzielen - ich kann sie möglicherweise festlegen - und zu lesen/Schreibe mount auf alle Betriebssysteme.

13
Mauro Colella

Jemand hat nachgeforscht, wie ein Flash-Laufwerk mit udf formatiert werden kann, damit es auf möglichst vielen Betriebssystemen verwendet werden kann. Hier sind seine Ergebnisse (früher dort , jetzt offline):

  • Windows 7 unterstützt bis zu UDF v2.6 uneingeschränkt, aber die UDF-Blockgröße muss mit der Blockgröße des zugrunde liegenden Geräts (bei USB-Sticks) übereinstimmen und die meisten Festplatten haben 512 Bytes; "Advanced Format" -Festplatten haben 4096 Bytes). Anscheinend muss die Festplatte partitioniert werden.

  • Linux 2.6.30 und höher unterstützt UDF vollständig, mindestens bis zur Version 2.5.

  • Mac OS X 10.5 unterstützt UDF vollständig bis UDF 2.01, jedoch nur bei Verwendung auf einer vollständigen Festplatte, also nicht partitioniert.

Wie oben erläutert, muss die Festplatte für USB-Festplatten in Windows partitioniert sein. Auf der anderen Seite funktioniert UDF unter OS X nur, wenn es auf einer vollständigen Festplatte (nicht partitioniert) verwendet wird. Es ist ziemlich überraschend, dass es eine Lösung gibt, die für beide Fälle funktioniert: die Festplatte gleichzeitig partitionieren und die Partitionierung aufheben.

DOS-Partitionstabellen werden in den Bytes 446-510 des Master-Boot-Datensatzes gespeichert. Dieser Master Boot Record wird im ersten Sektor auf der Festplatte, Sektor 0, gespeichert. In der Regel startet die erste angegebene Partition einige Kilobyte weiter. Es scheint jedoch möglich zu sein, eine Partitionstabelle zu erstellen, deren erste Partition bei Sektor 0 beginnt, sodass das Ergebnis eine Partition ist, die die Partitionstabelle selbst enthält. Partitionseditorprogramme scheinen sich zu weigern, eine solche Tabelle zu erstellen, aber zumindest neuere Linux- und Windows-Kernel scheinen sich nicht darum zu kümmern.

Das Schöne daran ist, dass UDF (ich nehme an, absichtlich) nicht die ersten paar Kilobyte der Partition oder der Festplatte verwendet, auf der es sich befindet. Dieser Ort kann also wirklich zum Speichern einer älteren Partitionstabelle verwendet werden, die sich auf eine Partition bezieht, die sich über das Ganze erstreckt Platte. Einige Tests haben gezeigt, dass dies unter Linux, Windows und Mac OS X wirklich funktioniert:

  • Mounts mit Lese- und Schreibzugriff unter Linux 2.6.30+, Mac OS X 10.5+ und Windows Vista +
  • Kann in Windows XP schreibgeschützt und nach einer Befehlszeilenbereitstellung in Linux 2.6.0+ verwendet werden
  • Unterstützt große Dateien, UNIX-Berechtigungen, Unicode-Dateinamen, Symlinks, Hardlinks usw.

Skript zum korrekten Formatieren der Festplatte: Perl-Skript oder Bash-Skript

15
Dan Benamy

Ich habe das gerade in einer VM ausprobiert. Es scheint, dass Sie Ihre Partition in Windows (neu) erstellen müssen. Weisen Sie ihr einen Laufwerksbuchstaben zu, formatieren Sie sie jedoch nicht in einem Dateisystem. Danach starte Ubuntu und folge einfach den Anweisungen und es sollte für Lese-/Schreibzugriff funktionieren.

Denken Sie daran, alle Ihre Daten zu sichern!

Installieren Sie zunächst die UDF-Tools:

Sudo apt-get install udftools

Ersetzen Sie den ersten Block durch nichts auf der Partition, die Sie in UDF formatieren möchten ^:

Sudo dd if=/dev/zero of=/dev/sdxN bs=512 count=1

Und zum Schluss das Format in UDF ^:

Sudo mkudffs --media-type=hd --blocksize=512 /dev/sdxN

^ wo durch:

  • x ist ein Platzhalter für den Buchstaben, der Ihrer Festplatte momentan zugewiesen ist

  • N ist ein Platzhalter für die Partitionsnummer

Viel Glück und lassen Sie mich wissen, ob es für Sie geklappt hat.

12
kicsyromy