Was ist die Partitions-ID / der Dateisystemtyp für UDF?

10

Dies ist wahrscheinlich trivial, um die Verwendung von cfdisk auf einer UDF-formatierten CD / DVD / Blu-Ray zu überprüfen, aber ich habe keine von beiden zur Hand.

Ich habe eine UDF-formatierte Partition auf einer USB-Festplatte erstellt, um Daten zwischen Linux- und Windows-Computern auszutauschen (FAT verarbeitet keine 4-GB-Dateien, die Unterstützung von NTFS-Zugriffsrechten ist unter Linux nicht stabil). Ich habe jetzt nur ein Problem: Windows weigert sich, die Partition bereitzustellen, da die ID des Dateisystemtyps auf '83' ('Linux') festgelegt ist. Ich habe ziemlich ausgiebig gesucht und kann nicht finden, welche Nummer ich dort setzen soll?

(Follow-up: " Mit welchem ​​Tool soll ich eine Festplatte als UDF formatieren? ")

Skolima
quelle
2
Ich glaube nicht, dass Sie mit der Ausführung von cfdisk auf einer CD, DVD oder Blu-Ray aussagekräftige Ergebnisse erzielen würden. Partitionen werden durch einige Bytes des MBR festgelegt, die zufällig auf Festplatten und USB-Sticks vorhanden sind, nicht auf Disketten oder optischen Medien.
Juliano

Antworten:

9

Die Antwort lautet Partitionstyp 06 (FAT16). Fragen Sie mich nicht warum, fragen Sie Microsoft.


quelle
5+ Jahre später half mir diese einfache Antwort ungemein. Vielen Dank an "user48160", wer und wo immer Sie jetzt sind!
JakeGould
6

Es stellt sich heraus, dass es keine Partitionstabelle für UDF gibt und keine Partitions-ID zugewiesen ist. Dieses Dateisystem muss die gesamte Festplatte umfassen, damit es von Windows erkannt wird. Das Formatieren einer Festplatte als UDF berührt die vorhandene Partitionstabelle nicht (Vorsicht - sie enthält veraltete Informationen, und wenn Sie Ihre Festplatte damit bereitstellen, werden die Daten zerstört!).

Aus Neugier erstellt UDF 2.5 und höher separate Partitionen (eine oder zwei pro Festplatte) für Metadaten. Diese Partitionen sind jedoch auch in der Standard-DOS-Partitionstabelle nicht sichtbar.

Skolima
quelle
1
Gerade als UDF formatiert, hatte eine der (MBR) logischen Partitionen auf meiner Festplatte und Windows 7 kein Problem damit
MarcH
@MarcH: Welche Partitions-ID hat Windows oder ein Tool für die Partition? (hatte Probleme, die Frage zu formulieren, sorry, wenn sie schlecht geformt ist)
ata
@ Juaco scrolle nach unten für die Antwort. Oder schauen Sie sich BOOTICE an.
MarcH
Mit einigen Partitionierungswerkzeugen können Sie Partitionen ohne Dateisystem erstellen. Genau das, was Sie brauchen, um ihm einen Laufwerksbuchstaben in Windows zuzuweisen und ihn dann im UDF-Format zu formatieren.
DanMan
3

Kurze Antwort: Ich würde vorschlagen, die MBR-ID 0x07 für UDF-Partitionen zu verwenden.


Lange Antwort:

Linux kümmert sich nicht um MBR-Partitions-IDs und ignoriert sie (*).

Windows 2000 und höher können der Partition mit der ID PartitionType genau dann einen Laufwerksbuchstaben zuweisen, wenn IsRecognizedPartition (PartitionType) true ist. Darüber hinaus muss für Nicht-FT-Partitionen gelten, dass IsFTPartition (PartitionType) falsch ist (andernfalls wird diese Partition als FT und nicht als normales FAT / NTFS / UDF / ... erkannt).

Bedingung IsRecognizedPartition (PartitionType) &&! IsFTPartition (PartitionType) gilt für diese MBR-Partitions-IDs: 0x01, 0x04, 0x06, 0x07, 0x0B, 0x0C, 0x0E (**). Dies bedeutet, dass Windows 2000 (und neu) die UDF-Partition erkennen und verwenden kann, wenn die MBR-Partitions-ID eine davon ist. Es gibt wahrscheinlich keine anderen Einschränkungen und jedes unterstützte Dateisystem akzeptiert Partitionen mit einer dieser MBR-IDs. Dies bedeutet, dass diese MBR-IDs nicht zur Erkennung des Dateisystems verwendet werden.

Es gibt jedoch einige Empfehlungen von Microsoft, wann ein bestimmter PartitionType verwendet werden sollte:

  • 0x01 - Primäre FAT12-Partition oder logisches Laufwerk (weniger als 32.680 Sektoren im Volume)
  • 0x04 - FAT16-Partition oder logisches Laufwerk (32.680–65.535 Sektoren oder 16 MB - 33 MB)
  • 0x06 - BIGDOS FAT16-Partition oder logisches Laufwerk (33 MB - 4 GB)
  • 0x07 - Installierbares Dateisystem (NTFS-Partition oder logisches Laufwerk)
  • 0x0B - FAT32-Partition oder logisches Laufwerk
  • 0x0C - FAT32-Partition oder logisches Laufwerk mit BIOS INT 13h-Erweiterungen (***)
  • 0x0E - BIGDOS FAT16-Partition oder logisches Laufwerk mit BIOS INT 13h-Erweiterungen (***)

Und auch Bedeutung von Microsoft:

  • 0x01 - Gibt eine Partition mit 12-Bit-FAT-Einträgen an.
  • 0x04 - Gibt eine Partition mit 16-Bit-FAT-Einträgen an.
  • 0x06 - Gibt eine riesige MS-DOS V4-Partition an.
  • 0x07 - Gibt eine IFS-Partition an.
  • 0x0B - Gibt eine FAT32-Partition an.
  • 0x0C - Windows 95/98: Gibt eine Partition an, die erweiterte INT 13-Dienste verwendet.

Auf Wikipedia finden Sie auch einige Empfehlungen:

  • 0x01 - CHS / LBA - DOS 2.0+ - FAT12 als primäre Partition in den ersten physischen 32 MB Festplatte ... (andernfalls verwenden Sie stattdessen 0x06)
  • 0x04 - CHS / LBA - DOS 3.0+ - FAT16 mit weniger als 65536 Sektoren (32 MB) ... (sonst verwenden Sie stattdessen 0x06)
  • 0x06 - CHS / LBA - DOS 3.31+ - FAT16B mit 65536 oder mehr Sektoren. Es muss sich in den ersten physischen 8 GB Festplatte befinden ... (andernfalls verwenden Sie stattdessen 0x0E). Wird auch für FAT12- und FAT16-Volumes in primären Partitionen verwendet, wenn sie sich nicht auf den ersten physischen 32 MB der Festplatte befinden.
  • 0x07 - CHS / LBA - OS / 2 1.2+, Windows NT / CE - IFS / HPFS / NTFS / exFAT / QNX
  • 0x0B - CHS / LBA - DOS 7.1+ - FAT32 mit CHS-Adressierung
  • 0x0C - LBA - DOS 7.1+ - FAT32 mit LBA
  • 0x0E - LBA - DOS 7.0+ - FAT16B mit LBA

Um die Liste der IDs zu vervollständigen, finden Sie hier einige Informationen zu älteren Systemen, die keine UDF-formatierte Festplattenpartition unterstützen.

Windows NT 4.0 und älter kann nur Partitionen mit der MBR-ID 0x01, 0x04, 0x06, 0x07 einen Laufwerksbuchstaben zuweisen.

DOS-basiertes Windows (95, 98 und ME) kann nur Partitionen mit MBR-IDs einen Laufwerksbuchstaben zuweisen: 0x01, 0x04, 0x06, 0x0B, 0x0C, 0x0E. MS-DOS selbst kann nur auf Partitionen mit MBR-IDs zugreifen: 0x01, 0x04, 0x06. Beachten Sie, dass diese Systeme die MBR-Partitions-ID zur Erkennung des Dateisystems verwenden. Die MBR-Partitions-ID muss mit dem Dateisystem auf der Partition übereinstimmen.

Fazit:

Schauen Sie sich die Partitionsgröße an: 0x01 und 0x04 sollten nur für Partitionen in den ersten 32 MB der Festplatte verwendet werden. 0x06 nur in den ersten 8 GB Festplatte. 0x0B ist für die CHS-Adressierung vorgesehen, die für 8-GB-Festplatten begrenzt ist. Ohne solche Grenzen gibt es also nur IDs: 0x07, 0x0C und 0x0E. Da 0x0C und 0x0E für FAT-Partitionen verwendet werden, würde ich vorschlagen, 0x07 zu wählen . Dies ist für IFS-Partitionen (Installable File System) gedacht. Laut Wikipedia hat Microsoft die Unterstützung für UDF in die Windows 2000 IFS-API aufgenommen. Die Verwendung von 0x0C oder 0x0E würde dazu führen, dass DOS-basierte Systeme diese Partition als FAT anzeigen, selbst wenn sie als UDF formatiert wäre. Partitionen mit der MBR-ID 0x07 sind auf diesen Systemen ausgeblendet. Sie unterstützen UDF nicht, daher ist es besser, 0x0C oder 0x0E zu wählen.

GPT:

Das Layout der GPT-Partition kommt nicht in Frage, hat jedoch ein ähnliches Problem wie das MBR. Für UDF ist keine Partitions-GUID (GPT-Äquivalent für MBR-ID) zugewiesen. Da Windows XP x64 UDF unterstützt und die GPT-Datenpartition nur mit der GUID EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (Microsoft Basic Data Partition) erkennen kann, ist dies die einzig mögliche Option für GPT.

Quellen:

(*) Es gibt eine Ausnahme: Die MBR-IDs 0x05, 0x0F und 0x85 werden zur Erkennung erweiterter MBR-Partitionen verwendet.
(**) Definitionen dieser beiden Aufrufe finden Sie in der Datei WinIoCtl.h, da sie als C-Makros deklariert sind.
(***) BIOS INT 13h-Erweiterungen bedeuten die Verwendung von LBA anstelle von CHS.

Pali
quelle
Diese Seite gibt an, dass 0x0E-Partitionen kleiner als 2 GiB sein müssen. Das bedeutet, dass es für UDF entweder 0x07 oder 0x0C sein muss. Letzteres klingt für mich besser, besonders wenn Sie die verlinkte Seite lesen. Beeindruckende Forschung, Hut ab!
Milind R
2

Auf den CDs und DVDs, mit denen ich mich befasse, gibt es keine Partitionstabelle. Auf Ihrer USB-Festplatte haben Sie eine Partitionstabelle auf das Medium geschrieben. Ich vermute, wenn Sie das gesamte Laufwerk als UDF-Datenträger ohne Partitionstabelle formatieren, kann Windows es problemlos bereitstellen.

Sie sagen nicht, wie groß Ihr USB-Laufwerk ist, und Sie möchten möglicherweise nicht das gesamte Laufwerk als UDF zuweisen. Sie können versuchen, den Partitionstyp mit fdisk als NTFS oder einen der anderen von MS unterstützten Typen festzulegen.

codeDr
quelle
Ich boote auch Linux von demselben Laufwerk, daher benötige ich eine Partition in einem von grub unterstützten Format. Ich habe gerade herausgefunden, dass grub2 (experimentell) Linux von UDF booten kann, also werde ich es versuchen.
Skolima
0

Ich habe das gleiche Problem. Meine USB-Festplatte hat 320 GB. Die Partitionstabelle sieht folgendermaßen aus:

Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x44fdfe06

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       27963   224612766    c  W95 FAT32 (LBA)
/dev/sda2           27964       38913    87955875    5  Extended
/dev/sda5           27964       33366    43399566    7  HPFS/NTFS
/dev/sda6           33367       38913    44556246   83  Linux

Partition sda5 ist eine UDF rev. 1.5 und sollten von Windows XP und höher lesbar sein. Linux liest es natürlich richtig. Windows ist jedoch verwirrt. Es erkennt die Partition als NTFS und nimmt dann an, dass es sich um eine unformatierte Partition handelt.

Mein Experiment mit UDF auf Pendrive hat mir gezeigt, dass Systeme dazu neigen, UDF mit FAT zu verwechseln. Sie interpretieren UDF als FAT. Es muss ziemlich große Ähnlichkeiten sein, weil ich Verzeichnisstruktur von zufälligen Zeichen sehen kann. Linux sagt, dass die Festplatte beschädigt ist, aber es weigert sich nicht, sie zu verwenden.

Ich denke, UDF (mindestens Version 1.5) wird auf USB-Laufwerken nicht gut unterstützt.


quelle
1
Wenn das Medium früher FAT hatte, kann es bleiben, dass UDF mit FAT verwechselt wird. Sie sollten sicherstellen, dass die FAT gelöscht / auf Null gesetzt wird, bevor Sie mit UDF formatieren.
Osvein