在一个评论,约翰写道:
在罕见的 GPT 磁盘 + 传统 BIOS 启动组合中,启动代码以老式方式从 MBR 读取
确定 PC 是否具有上述罕见组合的正确方法是什么?应使用哪些 Windows 和/或 Linux 命令来检查磁盘是否存在这种情况?
答案1
如果您的 PC 上安装了正常运行的 Linux,您可以检查该目录是否/sys/firmware/efi
存在。如果它确实存在,则您的计算机具有 EFI 固件并且不处于 BIOS 兼容模式。如果该目录丢失,则计算机将使用旧版 BIOS 启动。
可以使用 检查分区方案fdisk
。如果fdisk
p
命令(“打印分区表”)报告磁盘标签类型为“msdos”,则该磁盘具有老式的 MBR 分区表。如果磁盘标签类型为“gpt”,则您拥有 GPT 磁盘。
答案2
我不知道这是否是一种罕见的情况,这是在旧机器上使用更大磁盘的明智方法之一。或者当系统固件有问题时,例如,在启动软件 RAID 设置时无法正确回退到第二个磁盘。
首先,您需要检查机器是否未使用 EFI 启动。看 ”如何知道我是否使用 UEFI 启动?“ 去检查。
在 Linux 上:
在 Linux 下,如果运行,您应该会看到一些指示器gdisk -l /dev/DISK
- 分区表是 GPT(“找到具有保护性 MBR 的有效 GPT;使用 GPT。”)
- 有一个 BIOS 启动分区(列为代码 EF02)。这是大多数 GRUB 所在的位置(它取代了传统 MBR 中引导扇区和第一个分区之间的扇区)。
例如,来自我的一张磁盘:
# gdisk -l /dev/sdd
GPT fdisk (gdisk) version 1.0.3
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sdd: 5860533168 sectors, 2.7 TiB
Model: ST3000VN000-1HJ1
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): 3F3F7901-A38A-42FF-A7BA-8FBD1C35FB11
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 5860533134
Partitions will be aligned on 8-sector boundaries
Total free space is 5582 sectors (2.7 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 259024 125.5 MiB 8300 Linux filesystem
2 260096 517135 125.5 MiB 0700 Microsoft basic data
3 518144 1953524128 931.3 GiB 8300 Linux filesystem
4 1953525760 3907033263 931.5 GiB 8300 Linux filesystem
5 3907035136 5860533134 931.5 GiB 8300 Linux filesystem
128 34 2047 1007.0 KiB EF02 BIOS boot partition
在 Windows 上:
请注意,这是我为虚拟机快速设置的不同磁盘。
diskpart
如果磁盘使用 GPT,则命令会在 GPT 列中显示list disk
a :*
DISKPART> list disk
Disk ### Status Size Free Dyn Gpt
-------- ------------- ------- ------- --- ---
Disk 0 Online 40 GB 0 B
Disk 1 Online 20 GB 0 B *
不幸的是,list partition
(使用选择磁盘后select disk 1
)将两个分区显示为“未知”:
DISKPART> list partition
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 Unknown 4096 KB 17 KB
Partition 2 Unknown 19 GB 5120 KB
但如果您详细说明它们(在 之后select partition 1
),您将获得类型 GUID:
DISKPART> detail partition
Partition 1
Type : 21686148-6449-6e6f-744e-656564454649
Hidden : Yes
Required: No
Attrib : 0000000000000000
Offset in Bytes: 17408
表示21686148-6449-6e6f-744e-656564454649
BIOS 启动分区。 (0fc63daf-8483-4772-8e79-3d69d8477de4
顺便说一句, 是一个通用的 Linux 分区)。
或者,在“磁盘管理”中,选择磁盘,选择“属性”,然后检查“卷”选项卡。这将告诉您“分区样式”是 MBR 还是 GPT。不幸的是,似乎没有办法从磁盘管理中获取分区类型。