问题标签 [guid-partition-table]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
94 浏览

uefi - 旧版 MBR - 偏移量 424 和 440 之间是什么?

根据 UEFI 规范版本 2.6(UEFI 官方网站上提供的最新版本)的第 5.2.1 节 - “Legacy Master Boot Record (MBR)”,传统 MBR 以 424 字节长的 BootCode 开头。其后是 UniqueMBRDiskSignature,但它从偏移量 440,而不是 424 开始。显而易见的问题是:偏移量 424 和 440 之间是什么?根本没有提到缺少的 16 个字节。

0 投票
0 回答
345 浏览

python - 如何在 Windows 上使用 python 查找磁盘是否为 GPT?

我在 Windows 7 上并安装了 python 3.5。我想知道提供给程序的磁盘/分区是否是 GPT。我知道 gdisks windows 软件包,我尝试使用它导致我的 USB 磁盘损坏。我只需要找到磁盘的类型,我不会对其进行任何操作。有没有办法在python下找到它?任何帮助表示赞赏...

0 投票
1 回答
442 浏览

openstack - 重启centos后错过了新的动态卷(循环)

我的物理驱动器上有 Centos。新卷创建如下命令:

一切顺利,我很高兴。但重新启动后,此卷丢失。有什么问题?谢谢 重启前 重启后

0 投票
0 回答
112 浏览

guid-partition-table - 应该如何解释分区类型 GUID?

根据 Wikipedia和其他各种来源,BIOS 引导分区的分区类型 GUID 是21686148-6449-6E6F-744E-656564454649. 这应该代表Hah!IdontneedEFI.

第一行是它在磁盘上的存储方式,第二行包含 ASCII 值:

如果我们采用前面提到的 GUID,我们会得到:

为什么有区别?

0 投票
1 回答
135 浏览

operating-system - 哪些虚拟磁盘格式与 GPT 兼容?

我想使用 uefi 编写一个引导加载程序/操作系统,所以我很自然地使用 virtualbox 来缩短反馈循环。目前我已经在我的工作区中创建了一个 gpt 分区文件,但现在我想将它连接到虚拟机。不幸的是,GPT 旨在对整个设备进行分区,我需要在虚拟硬盘驱动器中这样做。我查看了 vdi(我不认为我想要)和 vhd 文件,最终我想将二进制文件复制并粘贴到这些文件中,并让它像在 efi 下启动普通高清一样工作,.. .但我不知道从哪里开始。

还有其他一些虚拟硬盘格式,但我不知道该选择什么。此外,关于这些格式中的任何一种如何工作的文档也很少。我可以使用什么类型的虚拟硬盘来完成这项任务?哪种格式的文档最好?

0 投票
0 回答
673 浏览

c# - 在 Windows 2012 R2 上获取 EFI 分区的 Volume Guid

我正在尝试提取EFI 分区VolumeGuid。我已经能够使用 WMI 查询和使用C# ManagementObjectSearcher通过代码在Windows 10机器上成功完成此操作。我创建了一个带有 GPT 分区类型的 VHD,我创建了以下内容,一个恢复分区、EFI 系统分区和一个基本数据分区。以下是我在挂载 VHD 后在 powershell 中运行的 WMI 查询。我无法在Windows 2012 R2机器中提取相同的内容。我可以在 Window 2012 R2 机器中提取的其余分区卷 guid。

示例 DiskPart 脚本

WMI 查询

在 Windows 10 上的 powershell 中,我可以看到 EFI 分区,如下所示。

但是,在“Windows 2012 R2”上运行时,上述 WMI 查询不会返回 EFI 分区的详细信息。即使使用 c# 代码运行相同的查询也不起作用。

  1. Windows 2012 R2 是否有任何限制阻止它显示 EFI 分区详细信息?
  2. 有没有其他方法可以提取 EFI 分区的卷 guid?
  3. 目前我必须为 EFI 分区分配一个驱动器号才能读取它,我更喜欢使用 \?\Volume{guid} 语法打开驱动器并以编程方式读取它,因为它可以避免不必要地分配驱动器号。

请建议。

0 投票
1 回答
164 浏览

guid - 在 GUID 分区表中,我如何知道有多少个分区?

我有一个带有 3 个分区的 USB 图像:

  • 分区 1:FAT32
  • 分区 2:exFAT
  • 分区 3:NTFS

我正在制作一个通过分区的程序,但我不确定如何知道我的程序应该查找多少个分区。通过查看原始数据,我可以看到它具有预期的三个分区,但是我的程序当然不知道这一点。

我试图查看“80(0x50)4 字节数组中的分区条目数”,但在我的示例中,它给了我值 128(0x80000000)。

这是我的示例图像中的十六进制屏幕截图。

保护性 MBR 在此处输入图像描述

分区表头 (LBA 1) 在此处输入图像描述

分区条目 (LBA 2–33) 在此处输入图像描述

0 投票
1 回答
54 浏览

c - 在 C/C++ 中退出引导服务后的 GPT 文件系统

我正在创建一个操作系统,并且在过去的几个月里一直在努力寻找一种在其中实现文件系统的方法。我可以在启动服务中读取文件,但在 UEFI 中退出启动服务后,该功能无法读取文件。我正在尝试使用 GPT 在引导服务之外创建一个文件系统驱动程序(尽管可能是 MBR,但基于我所看到的几乎不可能)。我见过的所有源代码和示例都使用带有 GRUB 的多重引导,但我不使用 GRUB 引导加载程序。相反,我遵循了 Poncho 的 OSDev 2 系列中的那个。我从 WYOOS 看到了一个示例,他使用 MSDos 分区系统,但它依赖于多重引导,因此它在我的场景中不起作用。所有帮助将不胜感激。谢谢。

0 投票
0 回答
40 浏览

c++ - 如何在 Windows 上用 C++ 启动磁盘

我设法使用virtdisk.h库创建了一个虚拟磁盘,现在我想用 GPT 对其进行初始化并在其上创建一个 NTFS 卷。有没有办法在 C++ 中做到这一点?