答えは、パーティション タイプ 06 (FAT16) です。理由は聞かないで、Microsoft に聞いてください。
UDF 用のパーティション テーブルがありません それに割り当てられたパーティション ID はありません。このファイルシステムは、Windows によって認識されるために、ディスク全体にまたがる必要があります。ハード ドライブを UDF としてフォーマットしても、既存のパーティション テーブルには影響しません (古い情報が含まれていることに注意してください。それを使用してドライブをマウントすると、データが破壊されます!)
興味深いことに、UDF 2.5 以降では、メタデータ用に個別のパーティション (ディスクごとに 1 つまたは 2 つ) が作成されます。ただし、これらのパーティションは、標準の DOS パーティション テーブルにも表示されません。
簡単な回答:MBR ID 0x07 を使用することをお勧めします UDF パーティション用。
長い答え:
Linux は MBR パーティション ID を気にせず、無視します (*)。
Windows 2000 以降では、ID PartitionType を持つパーティションにドライブ文字を割り当てることができます IsRecognizedPartition(PartitionType) の場合のみ 本当です。さらに、非 FT パーティションの場合、IsFTPpartition(PartitionType) を保持する必要があります false (そうでない場合、そのパーティションは通常の FAT/NTFS/UDF/... としてではなく、FT として検出されます)。
条件 IsRecognizedPartition(PartitionType) &&!IsFTPPartition(PartitionType) 次の MBR パーティション ID に適用:0x01、0x04、0x06、0x07、0x0B、0x0C、0x0E (**)。つまり、MBR パーティション ID が UDF パーティションの 1 つである場合、Windows 2000 (およびそれ以降) は UDF パーティションを認識して使用できます。おそらく他に制限はなく、サポートされているファイル システムはすべて、これらの MBR ID を持つパーティションを受け入れます。つまり、これらの MBR ID はファイル システムの検出には使用されません。
しかし、いくつかの推奨事項があります 特定の PartitionType の場合、Microsoft によって 使用する必要があります:
- 0x01 - FAT12 プライマリ パーティションまたは論理ドライブ (ボリューム内の 32,680 セクター未満)
- 0x04 - FAT16 パーティションまたは論理ドライブ (32,680–65,535 セクターまたは 16 MB–33 MB)
- 0x06 - BIGDOS FAT16 パーティションまたは論理ドライブ (33 MB–4 GB)
- 0x07 - インストール可能なファイル システム (NTFS パーティションまたは論理ドライブ)
- 0x0B - FAT32 パーティションまたは論理ドライブ
- 0x0C - BIOS INT 13h 拡張 (***) を使用する FAT32 パーティションまたは論理ドライブ
- 0x0E - BIGDOS FAT16 パーティションまたは BIOS INT 13h 拡張を使用する論理ドライブ (***)
また、意味 マイクロソフト:
- 0x01 - 12 ビットの FAT エントリを持つパーティションを指定します。
- 0x04 - 16 ビットの FAT エントリを持つパーティションを指定します。
- 0x06 - MS-DOS V4 の巨大なパーティションを指定します。
- 0x07 - IFS パーティションを指定します。
- 0x0B - FAT32 パーティションを指定します。
- 0x0C - Windows 95/98:拡張 INT 13 サービスを使用するパーティションを指定します。
ウィキペディアにはいくつかの推奨事項もあります:
- 0x01 - CHS/LBA - DOS 2.0+ - ディスクの最初の物理 32 MB のプライマリ パーティションとして FAT12 ... (それ以外の場合は代わりに 0x06 を使用)
- 0x04 - CHS/LBA - DOS 3.0+ - 65536 セクター (32 MB) 未満の FAT16 ... (それ以外の場合は代わりに 0x06 を使用)
- 0x06 - CHS/LBA - DOS 3.31+ - 65536 以上のセクタを持つ FAT16B。ディスクの最初の物理 8 GB に存在する必要があります ... (それ以外の場合は、代わりに 0x0E を使用します)。 FAT12 および FAT16 ボリュームがディスクの最初の物理 32 MB に存在しない場合は、プライマリ パーティションの FAT12 および FAT16 ボリュームにも使用されます。
- 0x07 - CHS/LBA - OS/2 1.2+、Windows NT/CE - IFS/HPFS/NTFS/exFAT/QNX
- 0x0B - CHS/LBA - DOS 7.1+ - CHS アドレッシングを使用する FAT32
- 0x0C - LBA - DOS 7.1+ - LBA 付き FAT32
- 0x0E - LBA - DOS 7.0+ - LBA 付き FAT16B
ID の完全なリストとして、UDF フォーマットのハードディスク パーティションをサポートしない古いシステムに関する情報をいくつか示します。
Windows NT 4.0 以前では、MBR ID が 0x01、0x04、0x06、0x07 のパーティションにのみドライブ文字を割り当てることができます。
DOS ベースの Windows (95、98、および ME) は、MBR ID が 0x01、0x04、0x06、0x0B、0x0C、0x0E のパーティションにのみドライブ文字を割り当てることができます。 MS-DOS 自体は、MBR ID が 0x01、0x04、0x06 のパーティションにのみアクセスできます。これらのシステムは、ファイル システムの検出に MBR パーティション ID を使用することに注意してください。 MBR パーティション ID は、パーティションのファイル システムと一致する必要があります。
結論:
パーティション サイズを確認します。0x01 と 0x04 は、ディスクの最初の 32 MB のパーティションにのみ使用する必要があります。 0x06 はディスクの最初の 8GB のみ。 0x0B は CHS アドレッシング用で、8GB ディスクに制限があります。したがって、そのような制限がないのは ID:0x07、0x0C、および 0x0E だけです。 0x0C と 0x0E は FAT パーティションに使用されるため、0x07 を選択することをお勧めします。 .これは IFS (Installable File System) パーティションの意味であり、ウィキペディアによると、Microsoft は UDF のサポートを Windows 2000 IFS API に追加しました。 0x0C または 0x0E を使用すると、DOS ベースのシステムでは、そのパーティションが UDF としてフォーマットされていても FAT として表示されます。これらのシステムでは、MBR ID 0x07 のパーティションは隠されています。これらは UDF をサポートしていないため、0x0C または 0x0E として選択することをお勧めします。
GPT:
GPT パーティション レイアウトは問題外ですが、MBR と同様の問題があります。 UDF に割り当てられたパーティション GUID (MBR ID に相当する GPT) はありません。 Windows XP x64 は UDF をサポートし、GUID EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 でのみ GPT データ パーティションを認識できるため (Microsoft Basic Data Partition)、これが GPT の唯一の選択肢です。
ソース:
- https://technet.microsoft.com/en-us/library/cc976786.aspx
- https://technet.microsoft.com/en-us/library/cc768180.aspx
- https://technet.microsoft.com/en-us/sysinternals/ff563751
- https://technet.microsoft.com/en-us/sysinternals/aa363990
- https://www.microsoft.com/resources/documentation/windowsnt/4/server/reskit/en-us/resguide/diskover.mspx
- https://en.wikipedia.org/wiki/Partition_type
- https://en.wikipedia.org/wiki/Installable_file_system
- ファイル Ntdddisk.h (WinDDK の一部)
- ファイル WinIoCtl.h (WinSDK の一部)
(*) 例外が 1 つあります。MBR ID 0x05、0x0F、および 0x85 は、拡張 MBR パーティションの検出に使用されます。
(**) これら 2 つの呼び出しの定義は、C マクロとして宣言されているため、WinIoCtl.h ファイルで見つけることができます。
(***) BIOS INT 13h 拡張は、CHS の代わりに LBA を使用することを意味します。