Ubuntu ISO 的 MBR 具有分区类型 0,这是一个无效值

Ubuntu ISO 的 MBR 具有分区类型 0,这是一个无效值

下面一行显示了四个分区表条目每台 16 字节。请参阅这里了解格式的规范。

$ sudo hd ubuntu-16.10-desktop-amd64.iso -s 446 -n 64
000001be  80 00 01 00 00 5e e0 ff  00 00 00 00 00 80 2f 00  |.....^......../.|
000001ce  00 fe ff ff ef fe ff ff  54 24 2f 00 c0 12 00 00  |........T$/.....|
000001de  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000001fe

后三个都是零,而第一个条目是令人感兴趣的。字节 0(从 0 开始计数)的值为 0x80,这意味着它确实描述了“活动分区”。字节 4 描述了分区类型,fx 0x0B 是 FAT32。但是 0 是无效值。根据此来源

00 :—— 不应在实际的表项中使用!它并不表示未知类型,而是一个空条目;在这种情况下,该 16 字节条目中的所有其他字段也应填充零。

因此,根据我所读到的内容,MBR 数据无效。这是怎么回事?

我使用 Ubuntu 16.04 (Yakkety) 进行此操作,下载地址:此链接,并且文件的md5sum为3f50877c05121f7fd8544bef2d722824。

答案1

我对分区系统不太了解,但我相信原因是它不是一个简单的 MBR 文件系统。使用parted

$ parted ubuntu-16.10-desktop-amd64.iso p 
Warning: The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes.
Ignore/Cancel? Ignore                                                     
Model:  (file)
Disk /home/muru/ubuntu-16.10-desktop-amd64.iso: 6375MB
Sector size (logical/physical): 2048B/512B
Partition Table: mac
Disk Flags: 

Number  Start   End     Size    File system  Name   Flags
 1      2048B   6143B   4096B                Apple
 2      1582MB  1584MB  2458kB               EFI

注意:Partition Table: mac。 维基百科文章苹果分区图说:

一些混合光盘同时包含 ISO 9660 主卷描述符和 Apple 分区图,从而允许光盘在不同类型的计算机上工作,包括 Apple 系统。

不过,我不知道为什么parted认为文件大小为 6GB。不过,file同意这里有一些与 Apple 分区图有关的事情:

$ file ubuntu-16.10-desktop-amd64.iso -k | fold -w 80                        
ubuntu-16.10-desktop-amd64.iso: DOS/MBR boot sector ISO 9660 CD-ROM filesystem d
ata (DOS/MBR boot sector) 'Ubuntu 16.10 amd64' (bootable); partition 2 : ID=0xef
, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsector 3089492, 4800 se
ctors DOS/MBR boot sector ISO 9660 CD-ROM filesystem data (DOS/MBR boot sector) 
'Ubuntu 16.10 amd64' (bootable) Apple Driver Map, blocksize 2048, blockcount 370
08, devtype 0, devid 0, descriptors 0, contains[@0x800]: Apple Partition Map, ma
p block count 2, start block 1, block count 2, name Apple, type Apple_partition_
map ISO 9660 CD-ROM filesystem data, contains[@0x1000]: Apple Partition Map, map
 block count 2, start block 772373, block count 1200, name EFI, type Apple_HFS I
SO 9660 CD-ROM filesystem data, contains[@0x1800]: ISO 9660 CD-ROM filesystem da
ta FoxPro FPT, blocks size 37008, next free block index 1163003904\012- data

相关内容