1
1
Fork 0
mirror of https://github.com/pbatard/rufus.git synced 2024-08-14 23:57:05 +00:00

[grub] update GRUB 2.04 core.img for Ubuntu 20.10 support

* 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.
This commit is contained in:
Pete Batard 2020-09-16 13:59:06 +01:00
parent 1bb2b3b126
commit e987272287
No known key found for this signature in database
GPG key ID: 38E0CF5E69EDD671
6 changed files with 22 additions and 14 deletions

View file

@ -1,7 +1,7 @@
This directory contains the Grub4DOS boot records that are used by Rufus
* grldr.mbr was taken from the official 2019.07.15 release from
http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2019-07-15/
* grldr.mbr was taken from the official 2020.08.09 release from
http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2020-08-09/
* Note that, for convenience reasons, the first 512 bytes from this grldr.mbr are
*not* the ones that Rufus processes when writing the actual MBR (first 512 bytes).

Binary file not shown.

View file

@ -1,10 +1,16 @@
This directory contains the Grub 2.0 boot records that are used by Rufus
* boot.img and core.img were compiled from
https://ftp.gnu.org/gnu/grub/grub-2.04.tar.xz, on a Debian 9.9 x64 system.
This was done following the guide from:
https://pete.akeo.ie/2014/05/compiling-and-installing-grub2-for.html.
--enable-boot-time was also added during ./configure for Manjaro Linux compatibility.
* 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