Réponse courte : Je suggère d'utiliser l'identifiant MBR 0x07 pour les partitions UDF.
Réponse longue :
Linux se moque des identifiants de partition MBR et les ignore (*).
Windows 2000 et versions ultérieures peuvent attribuer une lettre de lecteur à une partition avec l'identifiant PartitionType si et seulement si IsRecognizedPartition(PartitionType) est vrai. De plus, pour les partitions non-FT, il doit être vrai que IsFTPartition(PartitionType) est faux (sinon cette partition est détectée comme FT et non comme FAT/NTFS/UDF ordinaire).
La condition IsRecognizedPartition(PartitionType) && !IsFTPartition(PartitionType) s'appliquent pour ces identifiants de partition MBR : 0x01, 0x04, 0x06, 0x07, 0x0B, 0x0C, 0x0E (**). Cela signifie que Windows 2000 (et plus récent) peut reconnaître et utiliser une partition UDF si l'identifiant de partition MBR est l'un de ceux-ci. Il n'y a probablement aucune autre restriction et tout système de fichiers pris en charge accepte une partition avec l'un de ces identifiants MBR. Ce qui signifie que ces identifiants MBR ne sont pas utilisés pour la détection du système de fichiers.
Mais il y a quelques recommandations de Microsoft concernant l'utilisation de certains PartitionType :
- 0x01 - Partition ou lecteur logique FAT12 primaire (moins de 32 680 secteurs dans le volume)
- 0x04 - Partition ou lecteur logique FAT16 (32 680 à 65 535 secteurs ou 16 Mo à 33 Mo)
- 0x06 - Partition ou lecteur logique FAT16 BIGDOS (33 Mo à 4 Go)
- 0x07 - Système de fichiers installable (partition ou lecteur logique NTFS)
- 0x0B - Partition ou lecteur logique FAT32
- 0x0C - Partition ou lecteur logique FAT32 utilisant des extensions BIOS INT 13h (***)
- 0x0E - Partition ou lecteur logique FAT16 BIGDOS utilisant des extensions BIOS INT 13h (***)
Et aussi la signification par Microsoft :
- 0x01 - Spécifie une partition avec des entrées FAT sur 12 bits.
- 0x04 - Spécifie une partition avec des entrées FAT sur 16 bits.
- 0x06 - Spécifie une partition MS-DOS V4 énorme.
- 0x07 - Spécifie une partition IFS.
- 0x0B - Spécifie une partition FAT32.
- 0x0C - Windows 95/98 : Spécifie une partition qui utilise des services INT 13 étendus.
Sur Wikipedia, on peut également trouver quelques recommandations :
- 0x01 - CHS/LBA - DOS 2.0+ - FAT12 comme partition primaire dans les premiers 32 Mo physiques du disque ... (sinon utiliser 0x06 à la place)
- 0x04 - CHS/LBA - DOS 3.0+ - FAT16 avec moins de 65536 secteurs (32 Mo) ... (sinon utiliser 0x06 à la place)
- 0x06 - CHS/LBA - DOS 3.31+ - FAT16B avec 65536 secteurs ou plus. Il doit résider dans les premiers 8 Go physiques du disque ... (sinon utiliser 0x0E à la place). Utilisé également pour les volumes FAT12 et FAT16 dans les partitions principales s'ils ne résident pas dans les premiers 32 Mo physiques du disque.
- 0x07 - CHS/LBA - OS/2 1.2+, Windows NT/CE - IFS/HPFS/NTFS/exFAT/QNX
- 0x0B - CHS/LBA - DOS 7.1+ - FAT32 avec adressage CHS
- 0x0C - LBA - DOS 7.1+ - FAT32 avec LBA
- 0x0E - LBA - DOS 7.0+ - FAT16B avec LBA
Pour compléter la liste des identifiants, voici des informations sur les anciens systèmes qui ne prennent pas en charge les partitions de disque dur formatées UDF.
Windows NT 4.0 et versions antérieures ne peuvent attribuer une lettre de lecteur qu'aux partitions avec l'identifiant MBR : 0x01, 0x04, 0x06, 0x07.
Les systèmes Windows basés sur MS-DOS (95, 98 et ME) ne peuvent attribuer une lettre de lecteur qu'aux partitions avec les identifiants MBR : 0x01, 0x04, 0x06, 0x0B, 0x0C, 0x0E. MS-DOS lui-même ne peut accéder qu'aux partitions avec les identifiants MBR : 0x01, 0x04, 0x06. Notez que ces systèmes utilisent l'identifiant de partition MBR pour la détection du système de fichiers. L'identifiant de partition MBR doit correspondre au système de fichiers sur la partition.
Conclusion :
Regardez la taille de la partition : 0x01 et 0x04 ne doivent être utilisés que pour les partitions dans les premiers 32 Mo du disque. 0x06 uniquement dans les premiers 8 Go du disque. 0x0B est pour l'adressage CHS qui a une limite pour les disques de 8 Go. Ainsi, sans ces limites, seuls les identifiants 0x07, 0x0C et 0x0E sont disponibles. Comme 0x0C et 0x0E sont utilisés pour les partitions FAT, je suggère de choisir 0x07. C'est destiné aux partitions IFS (Installable File System) et selon Wikipedia, Microsoft a ajouté le support pour UDF dans l'API IFS de Windows 2000. L'utilisation de 0x0C ou 0x0E ferait que les systèmes basés sur MS-DOS afficheraient cette partition comme FAT, même si elle serait formatée en UDF. Les partitions avec l'identifiant MBR 0x07 sont masquées sur ces systèmes. Ils ne prennent pas en charge UDF, il est donc préférable de choisir 0x07 plutôt que 0x0C ou 0x0E.
GPT :
La disposition des partitions GPT est en dehors de cette question, mais elle a un problème similaire à MBR. Aucun GUID de partition (équivalent GPT de l'identifiant MBR) n'est attribué pour UDF. Comme Windows XP x64 prend en charge UDF et peut reconnaître une partition de données GPT uniquement avec le GUID EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (Partition de données de base Microsoft), c'est le seul choix possible pour GPT.
Sources :
() Il y a une exception : les identifiants MBR 0x05, 0x0F et 0x85 sont utilisés pour la détection des partitions MBR étendues.<br>() Les définitions de ces deux appels peuvent être trouvées dans le fichier WinIoCtl.h car ils sont déclarés en tant que macros C.<br>() Les extensions BIOS INT 13h signifient l'utilisation de LBA au lieu de CHS.
2 votes
Je ne pense pas que vous obtiendrez des résultats significatifs en exécutant cfdisk sur un CD, un DVD ou un Blu-Ray. Les partitions sont définies par quelques octets du MBR, qui se trouvent dans les disques durs et les clés USB, mais pas dans les disquettes ou les supports optiques.