GUID 分区表存储在设备上的什么位置?

GUID 分区表存储在设备上的什么位置?

我的一个朋友使用我的 U 盘在他的 mac 上安装了新版本的 OS X。现在我拿回来了,我想把它擦掉(我自己用Linux)。但是,我这样做有点困难。我做的第一件事就是向它写入 Fedora LiveCD,使用dd

# dd if=Fedora.iso of=/dev/sdb

我认为这会覆盖位于设备开头的分区表,从而删除 OS X 安装程序创建的分区。然而,我错了,分区仍然在那里。于是我抬起头GUID 分区表并意识到他们不仅在设备的开头添加标头,还在设备的末尾添加标头。所以我做了:

$ sudo dd if=/dev/zero of=/dev/sdb
dd: writing to `/dev/sdb': No space left on device
15687681+0 records in
15687680+0 records out
8032092160 bytes (8.0 GB) copied, 1354.82 s, 5.9 MB/s

此后,我从计算机上拔下 USB 记忆棒并将其重新插入。blkid现在运行将不会在设备上产生任何分区。然而,再次写入 Fedora 映像后,OS X 分区又回来了:

$ sudo blkid
/dev/sdb1: LABEL="Fedora-17-x86_64-Live-Desktop.is" TYPE="iso9660" 
/dev/sdb2: SEC_TYPE="msdos" LABEL="EFI" UUID="B368-CE08" TYPE="vfat" 
/dev/sdb3: UUID="f92ff3eb-0250-303f-8030-7d063e302ccf" LABEL="Fedora 17" TYPE="hfsplus"

我怀疑这与此有关保护性MBR上面的维基百科页面中的位。我怎样才能摆脱它?

更新

我最终运行parted并删除了那里的 GPT。我确实收到了有关 GPT 损坏的警告(可能是由于将其归零),但“签名”就在那里。

所以我最终恢复了我的 USB 记忆棒,但如果有人能够阐明到底发生了什么,这些签名存储在哪里,那就太好了?

答案1

找到了答案:Fedora ISO 包含一个 GUID 分区表,其分区布局与 OS X 非常相似。因此,我混淆了由

dd if=Fedora.iso of=/dev/sdb

与由 OS X 安装程序创建的文件。其中一个分区有一个事实,这一事实进一步加剧了混乱高频振动+文件系统,这是 OS X 特有的。更奇怪的是,在parted将 ISO 写入 U 盘后运行会产生:

$ sudo parted /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Warning: /dev/sdb contains GPT signatures, indicating that it has a GPT table.  However, it does not have a valid fake msdos partition table, as it should.  Perhaps it was corrupted --
possibly by a program that doesn't understand GPT partition tables.  Or perhaps you deleted the GPT table, and are now using an msdos partition table.  Is this a GPT partition table?
Yes/No?

无论如何,重点是分区在将整个设备归零后并没有神奇地恢复,而是在ddISO 时创建的。

相关内容