引导活动分区的 MBR 引导扇区

引导活动分区的 MBR 引导扇区

我的 mbr (+ 以下扇区) 上目前安装了 burg 引导程序,我想将其安装在引导分区上,并用一个简单的 mbr 替换该 mbr,该 mbr 将引导标记为活动的分区(某些分区工具中的“引导”标志)。

尽管我懂得足够的编程知识,可以用汇编语言编写一个引导扇区来查找第一个活动分区并加载它,但我宁愿使用现有的引导扇区。

在哪里可以找到这样的引导扇区?也许默认的 Windows 引导扇区可以做到这一点?

我为什么要这么做

我在 Windows 上有一个工具(3DS Max),每次运行时都会破坏 burg 引导加载程序。显然,它包含一个名为柔性网络它会标记你的计算机说“嘿,3DS Max 安装在这里,不幸的是,它将这些信息写入了引导扇区之后的 63 个扇区之一中,并且 burg 就安装在那里(我会将这种行为称为“恶意软件”或“严重错误”)。

最新版本的 grub 现在可以检测应用程序何时破坏了你的启动,并使用不同的扇区,但 burg(grub 的图形变体)缺少该补丁

因此,我决定在启动分区上安装 burg,将该分区标记为活动分区,并且只使用单扇区引导加载程序,它将找到活动分区并启动它(PC 引导扇区在过去就是用来做这件事的)。

答案1

因此,我决定在启动分区上安装 burg,将该分区标记为活动分区,然后只使用单扇区引导加载程序,它将找到活动分区并启动它

很好,因为引导管理器/引导加载程序认为该空间是空闲的,就像 FlexNet Publisher 认为那样,都是不好的。除了 EFI 分区磁盘上该空间不是空闲的之外根本,只是偶然和习惯才使得一些MBR 分区磁盘。毕竟,世界开始已经有好几年了不是从“轨道” 1 的起点开始第一个分区,并将分区对齐到从 4KiB 到多 GiB 边界的任何位置。

(在过去的美好时光里,PC 引导扇区就是用来做这件事的)。

有很多方法可以将引导代码写入主引导记录,例如 Microsoft 实用程序

bootsect /nt60 SYS /mbr
通过 FreeBSD 实用程序
fdisk -B ada0
Linux 实用程序
ms-sys --mbrsyslinux /dev/sda

newmbr自己编写了两个程序。

在“救援”磁盘和分区工具中,有大量实用程序可以执行此操作。我听说有些人甚至有在 EFI 分区硬盘上执行此操作的代码。☺

进一步阅读

答案2

我相信,一旦你安装了引导加载程序,你的膜生物反应器已经使用 BootStrap 代码正确设置。这就是您所需要的。如果您已将引导加载程序转移到另一个分区,那么您所需要做的就是更改 MBR 中的活动分区标志。还要确保分区类型正确。

您可以通过手动编辑 MBR 来更改该标志(命令 + 一个不错的十六进制编辑器就可以了,分区条目从偏移量 1BEh 开始)或者使用一些实用程序,如磁盘管理或者分区

*编辑:

您也可以尝试直接在单独的分区上安装 BURG,就像安装 GRUB 一样,而不是进行传输:

sudo burg-install –force –root-directory=/media/BootPartitionMountPoint  /dev/sda

这将配置一个正确的 MBR,其中包含跳转到您的启动分区挂载点并加载 BURG。

相关内容