mirror of
https://github.com/pbatard/rufus.git
synced 2024-08-14 23:57:05 +00:00
e987272287
* GRUB have cherry-picked patches from the "BootHole" vulnerability fix at https://lists.gnu.org/archive/html/grub-devel/2020-07/msg00034.html and have applied them to their 2.04 GRUB loader. * This results in breakage with "error: symbol 'grub_calloc' not found" when using the release GRUB 2.04 version of core.img. * Therefore, we too cherry-picked some patches to apply on top of GRUB 2.04 release to make our core.img compatible with Ubuntu 20.10. * Closes #1616 * Also increase the maximum write stride for ms-sys to 64 KB (required to write the GRUB 2.05 bootloader which is larger than 32 KB) and update hash DB. |
||
---|---|---|
.. | ||
boot.img | ||
core.img | ||
grub2_version.h | ||
readme.txt |
This directory contains the Grub 2.0 boot records that are used by Rufus * boot.img and core.img were created from: https://ftp.gnu.org/gnu/grub/grub-2.04.tar.xz with the following two extra patches applied: - https://lists.gnu.org/archive/html/grub-devel/2020-07/msg00016.html - https://lists.gnu.org/archive/html/grub-devel/2020-07/msg00017.html on a Debian 10.x x64 system using the commands: ./autogen.sh ./configure --disable-nls --enable-boot-time make -j6 cd grub-core ../grub-mkimage -v -O i386-pc -d. -p\(hd0,msdos1\)/boot/grub biosdisk part_msdos fat ntfs exfat -o core.img * boot.img has been modified to nop the jump @ 0x66 as per grub2's setup.c comments: /* If DEST_DRIVE is a hard disk, enable the workaround, which is for buggy BIOSes which don't pass boot drive correctly. Instead, they pass 0x00 or 0x01 even when booted from 0x80. */ * Note that, for convenience reasons, the content of boot.img is *not* the one that Rufus processes when writing the MBR. Instead, the byte array from src/ms-sys/inc/mbr_grub2.h (whose content is identical) is what Rufus uses. If you modify these files, be mindful that you may also need to update the array in mbr_grub2.h. * For details, see src/format.c, src/msys/br.c and src/msys/inc/mbr_grub2.h.