Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gentoo installcd copied in ISO mode no longer boots in UEFI mode #2127

Closed
10 tasks done
benkohler opened this issue Jan 3, 2023 · 9 comments
Closed
10 tasks done

Gentoo installcd copied in ISO mode no longer boots in UEFI mode #2127

benkohler opened this issue Jan 3, 2023 · 9 comments

Comments

@benkohler
Copy link

benkohler commented Jan 3, 2023

Checklist

  • I looked at https://github.com/pbatard/rufus/wiki/FAQ to see if my question has already been answered.
  • I performed a search in the issue tracker for similar issues using keywords relevant to my problem, such as the error message I got from the log.
  • I clicked the 'Log' button or pressed Ctrl-L in Rufus, and copy/pasted the log into the line that says <FULL LOG> below.
  • The log I am copying is the FULL log, starting with the line Rufus version: x.y.z - I have NOT removed any part of it.

Additionally (if applicable):

  • I ran a bad blocks check, by clicking Show advanced format options then Check device for bad blocks, and confirmed that my USB is not defective.
  • I also tried one or more of the following:
    • Using a different USB drive.
    • Plugging the USB into a different port.
    • Running Rufus on a different computer.
  • If using an image, I clicked on the (✓) button to compute the MD5, SHA1 and SHA256 checksums, which are therefore present in the log I copied. I confirmed, by performing an internet search, that these values match the ones from the official image.

Issue description

I'm part of the Gentoo Linux release team, and we began getting reports that our Minimal InstallCD image is no longer booting in UEFI mode when copied via rufus in ISO image mode. When booting BIOS/legacy it still works, but in UEFI mode it shows:

Welcome to GRUB!

error: unknown filesystem.
error: unknown filesystem.
error: unknown filesystem.
error: unknown filesystem.
error: unknown filesystem.
error: unknown filesystem.
error: unknown filesystem.
error: unknown filesystem.
error: unknown filesystem.
Entering rescue mode...
grub rescue>

I believe the breaking change is on our end, when our ISO build tool changed how it prepares the ISO.

Previously we had an isolinux boot image for BIOS and a grub boot image (via grub-mkstandalone) for UEFI, and we called mkisofs to generate an ISO with those boot images embedded. Now we are calling grub-mkrescue to build the ISO, which will use grub for both BIOS & UEFI boot.

You can see our old call here: https://github.com/gentoo/catalyst/blob/catalyst-3.0-stable/targets/support/create-iso.sh#L258
It was roughly:

mkisofs -J -R -l ${mkisofs_zisofs_opts} -V "${clst_iso_volume_id}" -o "${1}" -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -eltorito-platform efi -b gentoo.efimg -no-emul-boot -z "${clst_target_path}"/

The new ISO creation command is defined here: https://github.com/gentoo/catalyst/blob/master/targets/support/create-iso.sh#L203 and just did a test build and here is the exact grub-mkrescue call and its output:

grub-mkrescue -joliet -iso-level 3 -o /var/tmp/catalyst/builds/default/install-amd64-minimal-latest.iso /var/tmp/catalyst/builds/default/livecd-stage2-amd64-latest
xorriso 1.5.4 : RockRidge filesystem manipulator, libburnia project.

Drive current: -outdev 'stdio:/var/tmp/catalyst/builds/default/install-amd64-minimal-latest.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 2101g free
Added to ISO image: directory '/'='/tmp/grub.PeDzRO'
xorriso : UPDATE :     882 files added in 1 seconds
Added to ISO image: directory '/'='/var/tmp/catalyst/builds/default/livecd-stage2-amd64-latest'
xorriso : UPDATE :     894 files added in 1 seconds
xorriso : NOTE : Copying to System Area: 512 bytes from file '/usr/lib/grub/i386-pc/boot_hybrid.img'
xorriso : UPDATE :  26.14% done
xorriso : UPDATE : Thank you for being patient. Working since 1 seconds.
xorriso : UPDATE : Thank you for being patient. Working since 2 seconds.
ISO image produced: 216413 sectors
Written to medium : 216413 sectors at LBA 0
Writing to 'stdio:/var/tmp/catalyst/builds/default/install-amd64-minimal-latest.iso' completed successfully.

This new ISO built the grub-mkrescue way successfully boots in BIOS or UEFI mode, when copied to the USB stick via dd or Rufus with dd mode. When Rufus copies in ISO image mode, BIOS boot still works but UEFI doesn't.

If you'd like to see an example ISO built this way: http://distfiles.gentoo.org/releases/amd64/autobuilds/20230101T164658Z/install-amd64-minimal-20230101T164658Z.iso

Thanks for any help you can provide in figuring this out.

Log

Rufus x86 v3.21.1949 (Portable)
Windows version: Windows 11 Pro, 64-bit (Build 22000.1335)
Syslinux versions: 4.07/2013-07-25, 6.04/pre1
Grub versions: 0.4.6a, 2.06
System locale ID: 0x0409 (en-US)
Will use default UI locale 0x0409
SetLGP: Successfully set NoDriveTypeAutorun policy to 0x0000009E
Localization set to 'en-US'
Found USB 3.0 device ' USB  SanDisk 3.2Gen1 USB Device' (0781:5591)
Using 'autorun.inf' label for drive E: 'ISOIMAGE'
1 device found
Disk type: Removable, Disk size: 64 GB, Sector size: 512 bytes
Cylinders: 7480, Tracks per cylinder: 255, Sectors per track: 63
Partition type: MBR, NB Partitions: 1
Disk ID: 0x001AEC94
Drive has a Grub 2.0 Master Boot Record
Partition 1:
  Type: FAT32 LBA (0x0c)
  Detected File System: FAT32
  Size: 57.3 GB (61529391104 bytes)
  Start Sector: 2048, Boot: Yes
Scanning image...
ISO analysis:
  Image is an ISO9660 image
  Detected EFI bootloader(s) (from '/efi.img'):
  ● 'boot.efi'
  ● 'bootia32.efi'
  ● 'bootx64.efi'
  Detected Grub version: 2.06
Disk image analysis:
  Image has an unknown Master Boot Record
  Image is a bootable disk image
ISO label: 'ISOIMAGE'
  Size: 431 MB (Projected)
  Uses: GRUB2
  Uses: EFI
Using image: install-amd64-minimal-20221113T170154Z.iso (432.0 MB)

Format operation started
Requesting disk access...
Will use 'E:' as volume mountpoint
Opened \\.\PhysicalDrive2 for exclusive write access
Analyzing existing boot records...
Drive has a Grub 2.0 Master Boot Record
Clearing MBR/PBR/GPT structures...
Erasing 2176 sectors
Initializing disk...
Partitioning (MBR)...
● Creating Main Data Partition (offset: 1048576, size: 57.3 GB)
Waiting for logical drive to reappear...
Formatting (Large FAT32)...
Opened \\?\Volume{3f2f1603-8b89-11ed-8b7c-00d8614765bd} for exclusive write access
Size : 57.3 GB 120174592 sectors
Cluster size 32768 bytes, 512 bytes per sector
Volume ID is 130e:2363
32 Reserved sectors, 14667 sectors per FAT, 2 FATs
1877269 Total clusters
1877268 Free clusters
Clearing out 29430 sectors for reserved sectors, FATs and root cluster...
Initializing reserved sectors and FATs...
FAT #0 sector at address: 32
FAT #1 sector at address: 14699
Writing Partition Boot Record...
Using Standard FAT32 partition boot record
Confirmed new volume has a primary FAT32 boot sector
Setting primary FAT32 boot sector for boot...
Confirmed new volume has a secondary FAT32 boot sector
Setting secondary FAT32 boot sector for boot...
Setting label...
Format completed.
Opened \\.\PhysicalDrive2 for exclusive write access
Writing Master Boot Record...
Partition is already FAT32 LBA...
Set bootable USB partition as 0x80
Using Grub 2.0 MBR
Writing Grub 2.0 SBR (from embedded)
Found volume \\?\Volume{3f2f1603-8b89-11ed-8b7c-00d8614765bd}\
Opened \\?\Volume{3f2f1603-8b89-11ed-8b7c-00d8614765bd} for exclusive write access
Writing Partition Boot Record...
Using Standard FAT32 partition boot record
Confirmed new volume has a primary FAT32 boot sector
Setting primary FAT32 boot sector for boot...
Confirmed new volume has a secondary FAT32 boot sector
Setting secondary FAT32 boot sector for boot...
Successfully remounted \\?\Volume{3f2f1603-8b89-11ed-8b7c-00d8614765bd}\ as E:
Extracting files...
Image is an ISO9660 image
This image will be extracted using Joliet extensions (if present)
Extracting: E:\README.txt (7.1 KB)
Extracting: E:\System\Library\CoreServices\.disk_label (1.4 KB)
Extracting: E:\System\Library\CoreServices\.disk_label.contentDetails (10 bytes)
Extracting: E:\System\Library\CoreServices\SystemVersion.plist (236 bytes)
Extracting: E:\System\Library\CoreServices\boot.efi (256 KB)
Extracting: E:\boot\System-gentoo.map (4.1 MB)
Extracting: E:\boot\gentoo (4.1 MB)
Extracting: E:\boot\gentoo-config (155.5 KB)
Extracting: E:\boot\gentoo.igz (8.4 MB)
Extracting: E:\boot\grub\fonts\unicode.pf2 (2.3 MB)
Extracting: E:\boot\grub\grub.cfg (492 bytes)
Extracting: E:\boot\grub\i386-efi\acpi.mod (9.6 KB)
Extracting: E:\boot\grub\i386-efi\adler32.mod (1.2 KB)
Extracting: E:\boot\grub\i386-efi\affs.mod (5.6 KB)
Extracting: E:\boot\grub\i386-efi\afs.mod (6.2 KB)
Extracting: E:\boot\grub\i386-efi\afsplitter.mod (1.5 KB)
Extracting: E:\boot\grub\i386-efi\ahci.mod (15.3 KB)
Extracting: E:\boot\grub\i386-efi\all_video.mod (500 bytes)
Extracting: E:\boot\grub\i386-efi\aout.mod (968 bytes)
Extracting: E:\boot\grub\i386-efi\appleldr.mod (3.1 KB)
Extracting: E:\boot\grub\i386-efi\archelp.mod (2.9 KB)
Extracting: E:\boot\grub\i386-efi\at_keyboard.mod (4.0 KB)
Extracting: E:\boot\grub\i386-efi\ata.mod (5.5 KB)
Extracting: E:\boot\grub\i386-efi\backtrace.mod (1.6 KB)
Extracting: E:\boot\grub\i386-efi\bfs.mod (6.9 KB)
Extracting: E:\boot\grub\i386-efi\bitmap.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\bitmap_scale.mod (3.6 KB)
Extracting: E:\boot\grub\i386-efi\blocklist.mod (2 KB)
Extracting: E:\boot\grub\i386-efi\boot.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\bsd.mod (30.5 KB)
Extracting: E:\boot\grub\i386-efi\bswap_test.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\btrfs.mod (19.9 KB)
Extracting: E:\boot\grub\i386-efi\bufio.mod (2 KB)
Extracting: E:\boot\grub\i386-efi\cat.mod (2.9 KB)
Extracting: E:\boot\grub\i386-efi\cbfs.mod (4.0 KB)
Extracting: E:\boot\grub\i386-efi\cbls.mod (3.3 KB)
Extracting: E:\boot\grub\i386-efi\cbmemc.mod (2.5 KB)
Extracting: E:\boot\grub\i386-efi\cbtable.mod (1 KB)
Extracting: E:\boot\grub\i386-efi\cbtime.mod (2.8 KB)
Extracting: E:\boot\grub\i386-efi\chain.mod (5.2 KB)
Extracting: E:\boot\grub\i386-efi\cmdline_cat_test.mod (3.0 KB)
Extracting: E:\boot\grub\i386-efi\cmp.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\cmp_test.mod (4.5 KB)
Extracting: E:\boot\grub\i386-efi\command.lst (3.6 KB)
Extracting: E:\boot\grub\i386-efi\configfile.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\cpio.mod (2.7 KB)
Extracting: E:\boot\grub\i386-efi\cpio_be.mod (2.8 KB)
Extracting: E:\boot\grub\i386-efi\cpuid.mod (1.7 KB)
Extracting: E:\boot\grub\i386-efi\crc64.mod (1.6 KB)
Extracting: E:\boot\grub\i386-efi\crypto.lst (936 bytes)
Extracting: E:\boot\grub\i386-efi\crypto.mod (4.9 KB)
Extracting: E:\boot\grub\i386-efi\cryptodisk.mod (11.7 KB)
Extracting: E:\boot\grub\i386-efi\cs5536.mod (3.8 KB)
Extracting: E:\boot\grub\i386-efi\ctz_test.mod (1.7 KB)
Extracting: E:\boot\grub\i386-efi\date.mod (2.1 KB)
Extracting: E:\boot\grub\i386-efi\datehook.mod (1.7 KB)
Extracting: E:\boot\grub\i386-efi\datetime.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\disk.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\diskfilter.mod (10.1 KB)
Extracting: E:\boot\grub\i386-efi\div.mod (932 bytes)
Extracting: E:\boot\grub\i386-efi\div_test.mod (5.4 KB)
Extracting: E:\boot\grub\i386-efi\dm_nv.mod (1.8 KB)
Extracting: E:\boot\grub\i386-efi\echo.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\efi_gop.mod (7.9 KB)
Extracting: E:\boot\grub\i386-efi\efi_uga.mod (4.6 KB)
Extracting: E:\boot\grub\i386-efi\efifwsetup.mod (1.4 KB)
Extracting: E:\boot\grub\i386-efi\efinet.mod (4 KB)
Extracting: E:\boot\grub\i386-efi\ehci.mod (15.9 KB)
Extracting: E:\boot\grub\i386-efi\elf.mod (4.1 KB)
Extracting: E:\boot\grub\i386-efi\eval.mod (1.4 KB)
Extracting: E:\boot\grub\i386-efi\exfat.mod (6 KB)
Extracting: E:\boot\grub\i386-efi\exfctest.mod (1.4 KB)
Extracting: E:\boot\grub\i386-efi\ext2.mod (6.1 KB)
Extracting: E:\boot\grub\i386-efi\extcmd.mod (5.0 KB)
Extracting: E:\boot\grub\i386-efi\f2fs.mod (6.6 KB)
Extracting: E:\boot\grub\i386-efi\fat.mod (6.1 KB)
Extracting: E:\boot\grub\i386-efi\file.mod (17.1 KB)
Extracting: E:\boot\grub\i386-efi\fixvideo.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\font.mod (13.0 KB)
Extracting: E:\boot\grub\i386-efi\fs.lst (219 bytes)
Extracting: E:\boot\grub\i386-efi\fshelp.mod (2.9 KB)
Extracting: E:\boot\grub\i386-efi\functional_test.mod (33.7 KB)
Extracting: E:\boot\grub\i386-efi\gcry_arcfour.mod (1.6 KB)
Extracting: E:\boot\grub\i386-efi\gcry_blowfish.mod (7.8 KB)
Extracting: E:\boot\grub\i386-efi\gcry_camellia.mod (32.6 KB)
Extracting: E:\boot\grub\i386-efi\gcry_cast5.mod (16.0 KB)
Extracting: E:\boot\grub\i386-efi\gcry_crc.mod (10.4 KB)
Extracting: E:\boot\grub\i386-efi\gcry_des.mod (18.7 KB)
Extracting: E:\boot\grub\i386-efi\gcry_dsa.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\gcry_idea.mod (2.9 KB)
Extracting: E:\boot\grub\i386-efi\gcry_md4.mod (3.1 KB)
Extracting: E:\boot\grub\i386-efi\gcry_md5.mod (3.6 KB)
Extracting: E:\boot\grub\i386-efi\gcry_rfc2268.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\gcry_rijndael.mod (19.0 KB)
Extracting: E:\boot\grub\i386-efi\gcry_rmd160.mod (7.9 KB)
Extracting: E:\boot\grub\i386-efi\gcry_rsa.mod (2.0 KB)
Extracting: E:\boot\grub\i386-efi\gcry_seed.mod (14.9 KB)
Extracting: E:\boot\grub\i386-efi\gcry_serpent.mod (16.6 KB)
Extracting: E:\boot\grub\i386-efi\gcry_sha1.mod (8.0 KB)
Extracting: E:\boot\grub\i386-efi\gcry_sha256.mod (4.2 KB)
Extracting: E:\boot\grub\i386-efi\gcry_sha512.mod (8.7 KB)
Extracting: E:\boot\grub\i386-efi\gcry_tiger.mod (12.1 KB)
Extracting: E:\boot\grub\i386-efi\gcry_twofish.mod (36.2 KB)
Extracting: E:\boot\grub\i386-efi\gcry_whirlpool.mod (24 KB)
Extracting: E:\boot\grub\i386-efi\gdb.mod (24.5 KB)
Extracting: E:\boot\grub\i386-efi\geli.mod (5.9 KB)
Extracting: E:\boot\grub\i386-efi\gettext.mod (4.9 KB)
Extracting: E:\boot\grub\i386-efi\gfxmenu.mod (40.7 KB)
Extracting: E:\boot\grub\i386-efi\gfxterm.mod (9.9 KB)
Extracting: E:\boot\grub\i386-efi\gfxterm_background.mod (2.8 KB)
Extracting: E:\boot\grub\i386-efi\gfxterm_menu.mod (4.9 KB)
Extracting: E:\boot\grub\i386-efi\gptsync.mod (3.8 KB)
Extracting: E:\boot\grub\i386-efi\gzio.mod (8.7 KB)
Extracting: E:\boot\grub\i386-efi\halt.mod (4.2 KB)
Extracting: E:\boot\grub\i386-efi\hashsum.mod (5.3 KB)
Extracting: E:\boot\grub\i386-efi\hdparm.mod (6.5 KB)
Extracting: E:\boot\grub\i386-efi\hello.mod (1.1 KB)
Extracting: E:\boot\grub\i386-efi\help.mod (2.5 KB)
Extracting: E:\boot\grub\i386-efi\hexdump.mod (3.1 KB)
Extracting: E:\boot\grub\i386-efi\hfs.mod (7 KB)
Extracting: E:\boot\grub\i386-efi\hfsplus.mod (8.1 KB)
Extracting: E:\boot\grub\i386-efi\hfspluscomp.mod (3.0 KB)
Extracting: E:\boot\grub\i386-efi\http.mod (5.7 KB)
Extracting: E:\boot\grub\i386-efi\iorw.mod (2.8 KB)
Extracting: E:\boot\grub\i386-efi\iso9660.mod (8.6 KB)
Extracting: E:\boot\grub\i386-efi\jfs.mod (6.1 KB)
Extracting: E:\boot\grub\i386-efi\jpeg.mod (7.4 KB)
Extracting: E:\boot\grub\i386-efi\json.mod (3.5 KB)
Extracting: E:\boot\grub\i386-efi\keylayouts.mod (5.0 KB)
Extracting: E:\boot\grub\i386-efi\keystatus.mod (1.8 KB)
Extracting: E:\boot\grub\i386-efi\ldm.mod (6.4 KB)
Extracting: E:\boot\grub\i386-efi\legacy_password_test.mod (14.1 KB)
Extracting: E:\boot\grub\i386-efi\legacycfg.mod (31 KB)
Extracting: E:\boot\grub\i386-efi\linux.mod (11.8 KB)
Extracting: E:\boot\grub\i386-efi\linux16.mod (5.6 KB)
Extracting: E:\boot\grub\i386-efi\loadbios.mod (3 KB)
Extracting: E:\boot\grub\i386-efi\loadenv.mod (5.9 KB)
Extracting: E:\boot\grub\i386-efi\loopback.mod (3.0 KB)
Extracting: E:\boot\grub\i386-efi\ls.mod (3.9 KB)
Extracting: E:\boot\grub\i386-efi\lsacpi.mod (4.7 KB)
Extracting: E:\boot\grub\i386-efi\lsefi.mod (3.5 KB)
Extracting: E:\boot\grub\i386-efi\lsefimmap.mod (2.6 KB)
Extracting: E:\boot\grub\i386-efi\lsefisystab.mod (3 KB)
Extracting: E:\boot\grub\i386-efi\lsmmap.mod (1.8 KB)
Extracting: E:\boot\grub\i386-efi\lspci.mod (4.7 KB)
Extracting: E:\boot\grub\i386-efi\lssal.mod (2.6 KB)
Extracting: E:\boot\grub\i386-efi\luks.mod (4.3 KB)
Extracting: E:\boot\grub\i386-efi\luks2.mod (14.1 KB)
Extracting: E:\boot\grub\i386-efi\lvm.mod (8.7 KB)
Extracting: E:\boot\grub\i386-efi\lzopio.mod (4.8 KB)
Extracting: E:\boot\grub\i386-efi\macbless.mod (3.3 KB)
Extracting: E:\boot\grub\i386-efi\macho.mod (7.4 KB)
Extracting: E:\boot\grub\i386-efi\mdraid09.mod (2.1 KB)
Extracting: E:\boot\grub\i386-efi\mdraid09_be.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\mdraid1x.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\memdisk.mod (2.0 KB)
Extracting: E:\boot\grub\i386-efi\memrw.mod (2.8 KB)
Extracting: E:\boot\grub\i386-efi\minicmd.mod (3.5 KB)
Extracting: E:\boot\grub\i386-efi\minix.mod (3.6 KB)
Extracting: E:\boot\grub\i386-efi\minix2.mod (3.6 KB)
Extracting: E:\boot\grub\i386-efi\minix2_be.mod (3.8 KB)
Extracting: E:\boot\grub\i386-efi\minix3.mod (3.7 KB)
Extracting: E:\boot\grub\i386-efi\minix3_be.mod (3.8 KB)
Extracting: E:\boot\grub\i386-efi\minix_be.mod (3.7 KB)
Extracting: E:\boot\grub\i386-efi\mmap.mod (6.7 KB)
Extracting: E:\boot\grub\i386-efi\moddep.lst (5.1 KB)
Extracting: E:\boot\grub\i386-efi\modinfo.sh (2.5 KB)
Extracting: E:\boot\grub\i386-efi\morse.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\mpi.mod (28.0 KB)
Extracting: E:\boot\grub\i386-efi\msdospart.mod (2.4 KB)
Extracting: E:\boot\grub\i386-efi\mul_test.mod (2 KB)
Extracting: E:\boot\grub\i386-efi\multiboot.mod (13.1 KB)
Extracting: E:\boot\grub\i386-efi\multiboot2.mod (14.9 KB)
Extracting: E:\boot\grub\i386-efi\nativedisk.mod (4.2 KB)
Extracting: E:\boot\grub\i386-efi\net.mod (51.3 KB)
Extracting: E:\boot\grub\i386-efi\newc.mod (2.9 KB)
Extracting: E:\boot\grub\i386-efi\nilfs2.mod (6.7 KB)
Extracting: E:\boot\grub\i386-efi\normal.mod (117.3 KB)
Extracting: E:\boot\grub\i386-efi\ntfs.mod (10.0 KB)
Extracting: E:\boot\grub\i386-efi\ntfscomp.mod (4.3 KB)
Extracting: E:\boot\grub\i386-efi\odc.mod (2.7 KB)
Extracting: E:\boot\grub\i386-efi\offsetio.mod (1.5 KB)
Extracting: E:\boot\grub\i386-efi\ohci.mod (10.2 KB)
Extracting: E:\boot\grub\i386-efi\part_acorn.mod (1.5 KB)
Extracting: E:\boot\grub\i386-efi\part_amiga.mod (1.8 KB)
Extracting: E:\boot\grub\i386-efi\part_apple.mod (2 KB)
Extracting: E:\boot\grub\i386-efi\part_bsd.mod (2.8 KB)
Extracting: E:\boot\grub\i386-efi\part_dfly.mod (1.7 KB)
Extracting: E:\boot\grub\i386-efi\part_dvh.mod (1.4 KB)
Extracting: E:\boot\grub\i386-efi\part_gpt.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\part_msdos.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\part_plan.mod (1.7 KB)
Extracting: E:\boot\grub\i386-efi\part_sun.mod (1.4 KB)
Extracting: E:\boot\grub\i386-efi\part_sunpc.mod (1.6 KB)
Extracting: E:\boot\grub\i386-efi\partmap.lst (111 bytes)
Extracting: E:\boot\grub\i386-efi\parttool.lst (17 bytes)
Extracting: E:\boot\grub\i386-efi\parttool.mod (4.9 KB)
Extracting: E:\boot\grub\i386-efi\password.mod (1.8 KB)
Extracting: E:\boot\grub\i386-efi\password_pbkdf2.mod (2.8 KB)
Extracting: E:\boot\grub\i386-efi\pata.mod (4.8 KB)
Extracting: E:\boot\grub\i386-efi\pbkdf2.mod (1.3 KB)
Extracting: E:\boot\grub\i386-efi\pbkdf2_test.mod (2.1 KB)
Extracting: E:\boot\grub\i386-efi\pcidump.mod (2.4 KB)
Extracting: E:\boot\grub\i386-efi\pgp.mod (11.5 KB)
Extracting: E:\boot\grub\i386-efi\play.mod (2.5 KB)
Extracting: E:\boot\grub\i386-efi\png.mod (7.7 KB)
Extracting: E:\boot\grub\i386-efi\priority_queue.mod (1.5 KB)
Extracting: E:\boot\grub\i386-efi\probe.mod (3.6 KB)
Extracting: E:\boot\grub\i386-efi\procfs.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\progress.mod (2.1 KB)
Extracting: E:\boot\grub\i386-efi\raid5rec.mod (1.3 KB)
Extracting: E:\boot\grub\i386-efi\raid6rec.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\random.mod (2.4 KB)
Extracting: E:\boot\grub\i386-efi\rdmsr.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\read.mod (1.4 KB)
Extracting: E:\boot\grub\i386-efi\reboot.mod (1.1 KB)
Extracting: E:\boot\grub\i386-efi\regexp.mod (52.3 KB)
Extracting: E:\boot\grub\i386-efi\reiserfs.mod (8.6 KB)
Extracting: E:\boot\grub\i386-efi\relocator.mod (17.8 KB)
Extracting: E:\boot\grub\i386-efi\romfs.mod (4.2 KB)
Extracting: E:\boot\grub\i386-efi\scsi.mod (4.7 KB)
Extracting: E:\boot\grub\i386-efi\search.mod (3.6 KB)
Extracting: E:\boot\grub\i386-efi\search_fs_file.mod (3.2 KB)
Extracting: E:\boot\grub\i386-efi\search_fs_uuid.mod (3.2 KB)
Extracting: E:\boot\grub\i386-efi\search_label.mod (3.2 KB)
Extracting: E:\boot\grub\i386-efi\serial.mod (8.9 KB)
Extracting: E:\boot\grub\i386-efi\setjmp.mod (628 bytes)
Extracting: E:\boot\grub\i386-efi\setjmp_test.mod (1.6 KB)
Extracting: E:\boot\grub\i386-efi\setpci.mod (5.2 KB)
Extracting: E:\boot\grub\i386-efi\sfs.mod (5.3 KB)
Extracting: E:\boot\grub\i386-efi\shift_test.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\signature_test.mod (6.4 KB)
Extracting: E:\boot\grub\i386-efi\sleep.mod (2.1 KB)
Extracting: E:\boot\grub\i386-efi\sleep_test.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\smbios.mod (5.3 KB)
Extracting: E:\boot\grub\i386-efi\spkmodem.mod (2.0 KB)
Extracting: E:\boot\grub\i386-efi\squash4.mod (7.1 KB)
Extracting: E:\boot\grub\i386-efi\strtoull_test.mod (2.1 KB)
Extracting: E:\boot\grub\i386-efi\syslinuxcfg.mod (17.9 KB)
Extracting: E:\boot\grub\i386-efi\tar.mod (3.3 KB)
Extracting: E:\boot\grub\i386-efi\terminal.lst (162 bytes)
Extracting: E:\boot\grub\i386-efi\terminal.mod (4.7 KB)
Extracting: E:\boot\grub\i386-efi\terminfo.mod (12.5 KB)
Extracting: E:\boot\grub\i386-efi\test.mod (5.2 KB)
Extracting: E:\boot\grub\i386-efi\test_blockarg.mod (1.3 KB)
Extracting: E:\boot\grub\i386-efi\testload.mod (2.7 KB)
Extracting: E:\boot\grub\i386-efi\testspeed.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\tftp.mod (4.8 KB)
Extracting: E:\boot\grub\i386-efi\tga.mod (4.3 KB)
Extracting: E:\boot\grub\i386-efi\time.mod (1.5 KB)
Extracting: E:\boot\grub\i386-efi\tpm.mod (3.7 KB)
Extracting: E:\boot\grub\i386-efi\tr.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\trig.mod (1.6 KB)
Extracting: E:\boot\grub\i386-efi\true.mod (1.1 KB)
Extracting: E:\boot\grub\i386-efi\udf.mod (8.5 KB)
Extracting: E:\boot\grub\i386-efi\ufs1.mod (5.2 KB)
Extracting: E:\boot\grub\i386-efi\ufs1_be.mod (5.6 KB)
Extracting: E:\boot\grub\i386-efi\ufs2.mod (5.2 KB)
Extracting: E:\boot\grub\i386-efi\uhci.mod (6.5 KB)
Extracting: E:\boot\grub\i386-efi\usb.mod (10.5 KB)
Extracting: E:\boot\grub\i386-efi\usb_keyboard.mod (3.8 KB)
Extracting: E:\boot\grub\i386-efi\usbms.mod (6.8 KB)
Extracting: E:\boot\grub\i386-efi\usbserial_common.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\usbserial_ftdi.mod (2.2 KB)
Extracting: E:\boot\grub\i386-efi\usbserial_pl2303.mod (2.6 KB)
Extracting: E:\boot\grub\i386-efi\usbserial_usbdebug.mod (1.4 KB)
Extracting: E:\boot\grub\i386-efi\usbtest.mod (3.5 KB)
Extracting: E:\boot\grub\i386-efi\video.lst (41 bytes)
Extracting: E:\boot\grub\i386-efi\video.mod (6.3 KB)
Extracting: E:\boot\grub\i386-efi\video_bochs.mod (5.5 KB)
Extracting: E:\boot\grub\i386-efi\video_cirrus.mod (5.9 KB)
Extracting: E:\boot\grub\i386-efi\video_colors.mod (5.5 KB)
Extracting: E:\boot\grub\i386-efi\video_fb.mod (21.1 KB)
Extracting: E:\boot\grub\i386-efi\videoinfo.mod (3.7 KB)
Extracting: E:\boot\grub\i386-efi\videotest.mod (3.9 KB)
Extracting: E:\boot\grub\i386-efi\videotest_checksum.mod (2.3 KB)
Extracting: E:\boot\grub\i386-efi\wrmsr.mod (1.5 KB)
Extracting: E:\boot\grub\i386-efi\xfs.mod (7.6 KB)
Extracting: E:\boot\grub\i386-efi\xnu.mod (27.4 KB)
Extracting: E:\boot\grub\i386-efi\xnu_uuid.mod (2.1 KB)
Extracting: E:\boot\grub\i386-efi\xnu_uuid_test.mod (1.9 KB)
Extracting: E:\boot\grub\i386-efi\xzio.mod (15.5 KB)
Extracting: E:\boot\grub\i386-efi\zfs.mod (40.3 KB)
Extracting: E:\boot\grub\i386-efi\zfscrypt.mod (5.4 KB)
Extracting: E:\boot\grub\i386-efi\zfsinfo.mod (6.6 KB)
Extracting: E:\boot\grub\i386-efi\zstd.mod (45.6 KB)
Extracting: E:\boot\grub\i386-pc\acpi.mod (10.3 KB)
Extracting: E:\boot\grub\i386-pc\adler32.mod (1.2 KB)
Extracting: E:\boot\grub\i386-pc\affs.mod (5.5 KB)
Extracting: E:\boot\grub\i386-pc\afs.mod (5.9 KB)
Extracting: E:\boot\grub\i386-pc\afsplitter.mod (1.5 KB)
Extracting: E:\boot\grub\i386-pc\ahci.mod (15.1 KB)
Extracting: E:\boot\grub\i386-pc\all_video.mod (492 bytes)
Extracting: E:\boot\grub\i386-pc\aout.mod (956 bytes)
Extracting: E:\boot\grub\i386-pc\archelp.mod (2.8 KB)
Extracting: E:\boot\grub\i386-pc\at_keyboard.mod (3.9 KB)
Extracting: E:\boot\grub\i386-pc\ata.mod (5.4 KB)
Extracting: E:\boot\grub\i386-pc\backtrace.mod (1.5 KB)
Extracting: E:\boot\grub\i386-pc\bfs.mod (6.6 KB)
Extracting: E:\boot\grub\i386-pc\biosdisk.mod (4.5 KB)
Extracting: E:\boot\grub\i386-pc\bitmap.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\bitmap_scale.mod (3.6 KB)
Extracting: E:\boot\grub\i386-pc\blocklist.mod (2.0 KB)
Extracting: E:\boot\grub\i386-pc\boot.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\bsd.mod (29.7 KB)
Extracting: E:\boot\grub\i386-pc\bswap_test.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\btrfs.mod (19.3 KB)
Extracting: E:\boot\grub\i386-pc\bufio.mod (2.0 KB)
Extracting: E:\boot\grub\i386-pc\cat.mod (2.8 KB)
Extracting: E:\boot\grub\i386-pc\cbfs.mod (3.8 KB)
Extracting: E:\boot\grub\i386-pc\cbls.mod (3.3 KB)
Extracting: E:\boot\grub\i386-pc\cbmemc.mod (2.4 KB)
Extracting: E:\boot\grub\i386-pc\cbtable.mod (1 KB)
Extracting: E:\boot\grub\i386-pc\cbtime.mod (2.7 KB)
Extracting: E:\boot\grub\i386-pc\chain.mod (3.3 KB)
Extracting: E:\boot\grub\i386-pc\cmdline_cat_test.mod (2.9 KB)
Extracting: E:\boot\grub\i386-pc\cmosdump.mod (1.1 KB)
Extracting: E:\boot\grub\i386-pc\cmostest.mod (1.8 KB)
Extracting: E:\boot\grub\i386-pc\cmp.mod (1.9 KB)
Extracting: E:\boot\grub\i386-pc\cmp_test.mod (4.5 KB)
Extracting: E:\boot\grub\i386-pc\command.lst (3.7 KB)
Extracting: E:\boot\grub\i386-pc\configfile.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\cpio.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\cpio_be.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\cpuid.mod (1.6 KB)
Extracting: E:\boot\grub\i386-pc\crc64.mod (1.5 KB)
Extracting: E:\boot\grub\i386-pc\crypto.lst (936 bytes)
Extracting: E:\boot\grub\i386-pc\crypto.mod (4.8 KB)
Extracting: E:\boot\grub\i386-pc\cryptodisk.mod (11.5 KB)
Extracting: E:\boot\grub\i386-pc\cs5536.mod (3.5 KB)
Extracting: E:\boot\grub\i386-pc\ctz_test.mod (1.6 KB)
Extracting: E:\boot\grub\i386-pc\date.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\datehook.mod (1.7 KB)
Extracting: E:\boot\grub\i386-pc\datetime.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\disk.mod (2.3 KB)
Extracting: E:\boot\grub\i386-pc\diskfilter.mod (9.8 KB)
Extracting: E:\boot\grub\i386-pc\div.mod (944 bytes)
Extracting: E:\boot\grub\i386-pc\div_test.mod (5.4 KB)
Extracting: E:\boot\grub\i386-pc\dm_nv.mod (1.8 KB)
Extracting: E:\boot\grub\i386-pc\drivemap.mod (5.2 KB)
Extracting: E:\boot\grub\i386-pc\echo.mod (1.9 KB)
Extracting: E:\boot\grub\i386-pc\efiemu.mod (23.2 KB)
Extracting: E:\boot\grub\i386-pc\ehci.mod (15.8 KB)
Extracting: E:\boot\grub\i386-pc\elf.mod (3.9 KB)
Extracting: E:\boot\grub\i386-pc\eltorito.img (29.1 KB)
Extracting: E:\boot\grub\i386-pc\eval.mod (1.3 KB)
Extracting: E:\boot\grub\i386-pc\exfat.mod (5.9 KB)
Extracting: E:\boot\grub\i386-pc\exfctest.mod (1.3 KB)
Extracting: E:\boot\grub\i386-pc\ext2.mod (6.0 KB)
Extracting: E:\boot\grub\i386-pc\extcmd.mod (4.6 KB)
Extracting: E:\boot\grub\i386-pc\f2fs.mod (6.3 KB)
Extracting: E:\boot\grub\i386-pc\fat.mod (6.0 KB)
Extracting: E:\boot\grub\i386-pc\file.mod (16.6 KB)
Extracting: E:\boot\grub\i386-pc\font.mod (12.7 KB)
Extracting: E:\boot\grub\i386-pc\freedos.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\fs.lst (219 bytes)
Extracting: E:\boot\grub\i386-pc\fshelp.mod (2.9 KB)
Extracting: E:\boot\grub\i386-pc\functional_test.mod (33.4 KB)
Extracting: E:\boot\grub\i386-pc\gcry_arcfour.mod (1.6 KB)
Extracting: E:\boot\grub\i386-pc\gcry_blowfish.mod (7.8 KB)
Extracting: E:\boot\grub\i386-pc\gcry_camellia.mod (32.5 KB)
Extracting: E:\boot\grub\i386-pc\gcry_cast5.mod (16.0 KB)
Extracting: E:\boot\grub\i386-pc\gcry_crc.mod (10.3 KB)
Extracting: E:\boot\grub\i386-pc\gcry_des.mod (18.7 KB)
Extracting: E:\boot\grub\i386-pc\gcry_dsa.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\gcry_idea.mod (2.8 KB)
Extracting: E:\boot\grub\i386-pc\gcry_md4.mod (3 KB)
Extracting: E:\boot\grub\i386-pc\gcry_md5.mod (3.6 KB)
Extracting: E:\boot\grub\i386-pc\gcry_rfc2268.mod (2.3 KB)
Extracting: E:\boot\grub\i386-pc\gcry_rijndael.mod (18.9 KB)
Extracting: E:\boot\grub\i386-pc\gcry_rmd160.mod (7.9 KB)
Extracting: E:\boot\grub\i386-pc\gcry_rsa.mod (1.9 KB)
Extracting: E:\boot\grub\i386-pc\gcry_seed.mod (14.8 KB)
Extracting: E:\boot\grub\i386-pc\gcry_serpent.mod (16.6 KB)
Extracting: E:\boot\grub\i386-pc\gcry_sha1.mod (7.9 KB)
Extracting: E:\boot\grub\i386-pc\gcry_sha256.mod (4.1 KB)
Extracting: E:\boot\grub\i386-pc\gcry_sha512.mod (8.6 KB)
Extracting: E:\boot\grub\i386-pc\gcry_tiger.mod (12.1 KB)
Extracting: E:\boot\grub\i386-pc\gcry_twofish.mod (36.1 KB)
Extracting: E:\boot\grub\i386-pc\gcry_whirlpool.mod (24 KB)
Extracting: E:\boot\grub\i386-pc\gdb.mod (24.5 KB)
Extracting: E:\boot\grub\i386-pc\geli.mod (5.8 KB)
Extracting: E:\boot\grub\i386-pc\gettext.mod (4.7 KB)
Extracting: E:\boot\grub\i386-pc\gfxmenu.mod (38.3 KB)
Extracting: E:\boot\grub\i386-pc\gfxterm.mod (9.7 KB)
Extracting: E:\boot\grub\i386-pc\gfxterm_background.mod (2.8 KB)
Extracting: E:\boot\grub\i386-pc\gfxterm_menu.mod (4.8 KB)
Extracting: E:\boot\grub\i386-pc\gptsync.mod (3.7 KB)
Extracting: E:\boot\grub\i386-pc\gzio.mod (8.6 KB)
Extracting: E:\boot\grub\i386-pc\halt.mod (4.5 KB)
Extracting: E:\boot\grub\i386-pc\hashsum.mod (5.1 KB)
Extracting: E:\boot\grub\i386-pc\hdparm.mod (6.4 KB)
Extracting: E:\boot\grub\i386-pc\hello.mod (1.1 KB)
Extracting: E:\boot\grub\i386-pc\help.mod (2.4 KB)
Extracting: E:\boot\grub\i386-pc\hexdump.mod (3 KB)
Extracting: E:\boot\grub\i386-pc\hfs.mod (6.8 KB)
Extracting: E:\boot\grub\i386-pc\hfsplus.mod (7.8 KB)
Extracting: E:\boot\grub\i386-pc\hfspluscomp.mod (2.9 KB)
Extracting: E:\boot\grub\i386-pc\http.mod (5.4 KB)
Extracting: E:\boot\grub\i386-pc\iorw.mod (2.7 KB)
Extracting: E:\boot\grub\i386-pc\iso9660.mod (8.4 KB)
Extracting: E:\boot\grub\i386-pc\jfs.mod (6.0 KB)
Extracting: E:\boot\grub\i386-pc\jpeg.mod (7.3 KB)
Extracting: E:\boot\grub\i386-pc\json.mod (3.4 KB)
Extracting: E:\boot\grub\i386-pc\keylayouts.mod (4.9 KB)
Extracting: E:\boot\grub\i386-pc\keystatus.mod (1.8 KB)
Extracting: E:\boot\grub\i386-pc\ldm.mod (6.2 KB)
Extracting: E:\boot\grub\i386-pc\legacy_password_test.mod (14.1 KB)
Extracting: E:\boot\grub\i386-pc\legacycfg.mod (29.5 KB)
Extracting: E:\boot\grub\i386-pc\linux.mod (12.9 KB)
Extracting: E:\boot\grub\i386-pc\linux16.mod (5.4 KB)
Extracting: E:\boot\grub\i386-pc\loadenv.mod (5.6 KB)
Extracting: E:\boot\grub\i386-pc\loopback.mod (2.9 KB)
Extracting: E:\boot\grub\i386-pc\ls.mod (3.8 KB)
Extracting: E:\boot\grub\i386-pc\lsacpi.mod (4.6 KB)
Extracting: E:\boot\grub\i386-pc\lsapm.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\lsmmap.mod (1.8 KB)
Extracting: E:\boot\grub\i386-pc\lspci.mod (4.7 KB)
Extracting: E:\boot\grub\i386-pc\luks.mod (4.3 KB)
Extracting: E:\boot\grub\i386-pc\luks2.mod (13.9 KB)
Extracting: E:\boot\grub\i386-pc\lvm.mod (8.3 KB)
Extracting: E:\boot\grub\i386-pc\lzopio.mod (4.6 KB)
Extracting: E:\boot\grub\i386-pc\macbless.mod (3.1 KB)
Extracting: E:\boot\grub\i386-pc\macho.mod (7.2 KB)
Extracting: E:\boot\grub\i386-pc\mda_text.mod (2.0 KB)
Extracting: E:\boot\grub\i386-pc\mdraid09.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\mdraid09_be.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\mdraid1x.mod (1.9 KB)
Extracting: E:\boot\grub\i386-pc\memdisk.mod (1.9 KB)
Extracting: E:\boot\grub\i386-pc\memrw.mod (2.7 KB)
Extracting: E:\boot\grub\i386-pc\minicmd.mod (3.4 KB)
Extracting: E:\boot\grub\i386-pc\minix.mod (3.5 KB)
Extracting: E:\boot\grub\i386-pc\minix2.mod (3.6 KB)
Extracting: E:\boot\grub\i386-pc\minix2_be.mod (3.8 KB)
Extracting: E:\boot\grub\i386-pc\minix3.mod (3.6 KB)
Extracting: E:\boot\grub\i386-pc\minix3_be.mod (3.7 KB)
Extracting: E:\boot\grub\i386-pc\minix_be.mod (3.7 KB)
Extracting: E:\boot\grub\i386-pc\mmap.mod (8.3 KB)
Extracting: E:\boot\grub\i386-pc\moddep.lst (5.5 KB)
Extracting: E:\boot\grub\i386-pc\modinfo.sh (2.6 KB)
Extracting: E:\boot\grub\i386-pc\morse.mod (2.3 KB)
Extracting: E:\boot\grub\i386-pc\mpi.mod (26.9 KB)
Extracting: E:\boot\grub\i386-pc\msdospart.mod (2.3 KB)
Extracting: E:\boot\grub\i386-pc\mul_test.mod (2.0 KB)
Extracting: E:\boot\grub\i386-pc\multiboot.mod (13.6 KB)
Extracting: E:\boot\grub\i386-pc\multiboot2.mod (14.8 KB)
Extracting: E:\boot\grub\i386-pc\nativedisk.mod (4.1 KB)
Extracting: E:\boot\grub\i386-pc\net.mod (48.9 KB)
Extracting: E:\boot\grub\i386-pc\newc.mod (2.8 KB)
Extracting: E:\boot\grub\i386-pc\nilfs2.mod (6.6 KB)
Extracting: E:\boot\grub\i386-pc\normal.mod (112.5 KB)
Extracting: E:\boot\grub\i386-pc\ntfs.mod (9.7 KB)
Extracting: E:\boot\grub\i386-pc\ntfscomp.mod (4.2 KB)
Extracting: E:\boot\grub\i386-pc\ntldr.mod (2.4 KB)
Extracting: E:\boot\grub\i386-pc\odc.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\offsetio.mod (1.4 KB)
Extracting: E:\boot\grub\i386-pc\ohci.mod (10.1 KB)
Extracting: E:\boot\grub\i386-pc\part_acorn.mod (1.6 KB)
Extracting: E:\boot\grub\i386-pc\part_amiga.mod (1.8 KB)
Extracting: E:\boot\grub\i386-pc\part_apple.mod (2 KB)
Extracting: E:\boot\grub\i386-pc\part_bsd.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\part_dfly.mod (1.7 KB)
Extracting: E:\boot\grub\i386-pc\part_dvh.mod (1.4 KB)
Extracting: E:\boot\grub\i386-pc\part_gpt.mod (2.3 KB)
Extracting: E:\boot\grub\i386-pc\part_msdos.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\part_plan.mod (1.7 KB)
Extracting: E:\boot\grub\i386-pc\part_sun.mod (1.4 KB)
Extracting: E:\boot\grub\i386-pc\part_sunpc.mod (1.5 KB)
Extracting: E:\boot\grub\i386-pc\partmap.lst (111 bytes)
Extracting: E:\boot\grub\i386-pc\parttool.lst (17 bytes)
Extracting: E:\boot\grub\i386-pc\parttool.mod (4.5 KB)
Extracting: E:\boot\grub\i386-pc\password.mod (1.8 KB)
Extracting: E:\boot\grub\i386-pc\password_pbkdf2.mod (2.7 KB)
Extracting: E:\boot\grub\i386-pc\pata.mod (4.7 KB)
Extracting: E:\boot\grub\i386-pc\pbkdf2.mod (1.3 KB)
Extracting: E:\boot\grub\i386-pc\pbkdf2_test.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\pci.mod (1.3 KB)
Extracting: E:\boot\grub\i386-pc\pcidump.mod (2.4 KB)
Extracting: E:\boot\grub\i386-pc\pgp.mod (11.1 KB)
Extracting: E:\boot\grub\i386-pc\plan9.mod (6.2 KB)
Extracting: E:\boot\grub\i386-pc\play.mod (2.4 KB)
Extracting: E:\boot\grub\i386-pc\png.mod (7.6 KB)
Extracting: E:\boot\grub\i386-pc\priority_queue.mod (1.5 KB)
Extracting: E:\boot\grub\i386-pc\probe.mod (3.4 KB)
Extracting: E:\boot\grub\i386-pc\procfs.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\progress.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\pxe.mod (3.7 KB)
Extracting: E:\boot\grub\i386-pc\pxechain.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\raid5rec.mod (1.3 KB)
Extracting: E:\boot\grub\i386-pc\raid6rec.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\random.mod (2.7 KB)
Extracting: E:\boot\grub\i386-pc\rdmsr.mod (1.8 KB)
Extracting: E:\boot\grub\i386-pc\read.mod (1.4 KB)
Extracting: E:\boot\grub\i386-pc\reboot.mod (1.6 KB)
Extracting: E:\boot\grub\i386-pc\regexp.mod (50.1 KB)
Extracting: E:\boot\grub\i386-pc\reiserfs.mod (8.5 KB)
Extracting: E:\boot\grub\i386-pc\relocator.mod (14.7 KB)
Extracting: E:\boot\grub\i386-pc\romfs.mod (4.1 KB)
Extracting: E:\boot\grub\i386-pc\scsi.mod (4.5 KB)
Extracting: E:\boot\grub\i386-pc\search.mod (3.5 KB)
Extracting: E:\boot\grub\i386-pc\search_fs_file.mod (3 KB)
Extracting: E:\boot\grub\i386-pc\search_fs_uuid.mod (3.1 KB)
Extracting: E:\boot\grub\i386-pc\search_label.mod (3 KB)
Extracting: E:\boot\grub\i386-pc\sendkey.mod (6.9 KB)
Extracting: E:\boot\grub\i386-pc\serial.mod (7.5 KB)
Extracting: E:\boot\grub\i386-pc\setjmp.mod (628 bytes)
Extracting: E:\boot\grub\i386-pc\setjmp_test.mod (1.6 KB)
Extracting: E:\boot\grub\i386-pc\setpci.mod (5.1 KB)
Extracting: E:\boot\grub\i386-pc\sfs.mod (5.1 KB)
Extracting: E:\boot\grub\i386-pc\shift_test.mod (2.3 KB)
Extracting: E:\boot\grub\i386-pc\signature_test.mod (6.2 KB)
Extracting: E:\boot\grub\i386-pc\sleep.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\sleep_test.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\smbios.mod (5.5 KB)
Extracting: E:\boot\grub\i386-pc\spkmodem.mod (2.0 KB)
Extracting: E:\boot\grub\i386-pc\squash4.mod (7.0 KB)
Extracting: E:\boot\grub\i386-pc\strtoull_test.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\syslinuxcfg.mod (17.0 KB)
Extracting: E:\boot\grub\i386-pc\tar.mod (3.2 KB)
Extracting: E:\boot\grub\i386-pc\terminal.lst (202 bytes)
Extracting: E:\boot\grub\i386-pc\terminal.mod (4.3 KB)
Extracting: E:\boot\grub\i386-pc\terminfo.mod (12 KB)
Extracting: E:\boot\grub\i386-pc\test.mod (4.9 KB)
Extracting: E:\boot\grub\i386-pc\test_blockarg.mod (1.2 KB)
Extracting: E:\boot\grub\i386-pc\testload.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\testspeed.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\tftp.mod (4.7 KB)
Extracting: E:\boot\grub\i386-pc\tga.mod (4.3 KB)
Extracting: E:\boot\grub\i386-pc\time.mod (1.4 KB)
Extracting: E:\boot\grub\i386-pc\tr.mod (2.3 KB)
Extracting: E:\boot\grub\i386-pc\trig.mod (1.6 KB)
Extracting: E:\boot\grub\i386-pc\true.mod (1.1 KB)
Extracting: E:\boot\grub\i386-pc\truecrypt.mod (3.5 KB)
Extracting: E:\boot\grub\i386-pc\udf.mod (8.3 KB)
Extracting: E:\boot\grub\i386-pc\ufs1.mod (5.2 KB)
Extracting: E:\boot\grub\i386-pc\ufs1_be.mod (5.6 KB)
Extracting: E:\boot\grub\i386-pc\ufs2.mod (5.3 KB)
Extracting: E:\boot\grub\i386-pc\uhci.mod (6.4 KB)
Extracting: E:\boot\grub\i386-pc\usb.mod (10.3 KB)
Extracting: E:\boot\grub\i386-pc\usb_keyboard.mod (3.8 KB)
Extracting: E:\boot\grub\i386-pc\usbms.mod (6.8 KB)
Extracting: E:\boot\grub\i386-pc\usbserial_common.mod (1.9 KB)
Extracting: E:\boot\grub\i386-pc\usbserial_ftdi.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\usbserial_pl2303.mod (2.6 KB)
Extracting: E:\boot\grub\i386-pc\usbserial_usbdebug.mod (1.4 KB)
Extracting: E:\boot\grub\i386-pc\usbtest.mod (3.5 KB)
Extracting: E:\boot\grub\i386-pc\vbe.mod (9.5 KB)
Extracting: E:\boot\grub\i386-pc\vga.mod (4.9 KB)
Extracting: E:\boot\grub\i386-pc\vga_text.mod (2.1 KB)
Extracting: E:\boot\grub\i386-pc\video.lst (33 bytes)
Extracting: E:\boot\grub\i386-pc\video.mod (5.8 KB)
Extracting: E:\boot\grub\i386-pc\video_bochs.mod (5.5 KB)
Extracting: E:\boot\grub\i386-pc\video_cirrus.mod (5.9 KB)
Extracting: E:\boot\grub\i386-pc\video_colors.mod (5.4 KB)
Extracting: E:\boot\grub\i386-pc\video_fb.mod (20.4 KB)
Extracting: E:\boot\grub\i386-pc\videoinfo.mod (3.8 KB)
Extracting: E:\boot\grub\i386-pc\videotest.mod (4.1 KB)
Extracting: E:\boot\grub\i386-pc\videotest_checksum.mod (2.2 KB)
Extracting: E:\boot\grub\i386-pc\wrmsr.mod (1.4 KB)
Extracting: E:\boot\grub\i386-pc\xfs.mod (7.3 KB)
Extracting: E:\boot\grub\i386-pc\xnu.mod (27.0 KB)
Extracting: E:\boot\grub\i386-pc\xnu_uuid.mod (2 KB)
Extracting: E:\boot\grub\i386-pc\xnu_uuid_test.mod (1.9 KB)
Extracting: E:\boot\grub\i386-pc\xzio.mod (15 KB)
Extracting: E:\boot\grub\i386-pc\zfs.mod (39.1 KB)
Extracting: E:\boot\grub\i386-pc\zfscrypt.mod (5.4 KB)
Extracting: E:\boot\grub\i386-pc\zfsinfo.mod (6.4 KB)
Extracting: E:\boot\grub\i386-pc\zstd.mod (44.8 KB)
Extracting: E:\boot\grub\locale\ast.mo (125.5 KB)
Extracting: E:\boot\grub\locale\ast.mo~ (125.5 KB)
Extracting: E:\boot\grub\locale\ca.mo (126.0 KB)
Extracting: E:\boot\grub\locale\ca.mo~ (126.0 KB)
Extracting: E:\boot\grub\locale\da.mo (117.4 KB)
Extracting: E:\boot\grub\locale\da.mo~ (117.4 KB)
Extracting: E:\boot\grub\locale\de.mo (131.5 KB)
Extracting: E:\boot\grub\locale\de.mo~ (131.5 KB)
Extracting: E:\boot\grub\locale\de@hebrew.mo (198.0 KB)
Extracting: E:\boot\grub\locale\de@hebrew.mo~ (198.0 KB)
Extracting: E:\boot\grub\locale\de_CH.mo (38.0 KB)
Extracting: E:\boot\grub\locale\de_CH.mo~ (38.0 KB)
Extracting: E:\boot\grub\locale\en@arabic.mo (164.7 KB)
Extracting: E:\boot\grub\locale\en@arabic.mo~ (164.7 KB)
Extracting: E:\boot\grub\locale\en@cyrillic.mo (155.5 KB)
Extracting: E:\boot\grub\locale\en@cyrillic.mo~ (155.5 KB)
Extracting: E:\boot\grub\locale\en@greek.mo (155.5 KB)
Extracting: E:\boot\grub\locale\en@greek.mo~ (155.5 KB)
Extracting: E:\boot\grub\locale\en@hebrew.mo (178.5 KB)
Extracting: E:\boot\grub\locale\en@hebrew.mo~ (178.5 KB)
Extracting: E:\boot\grub\locale\en@piglatin.mo (137.6 KB)
Extracting: E:\boot\grub\locale\en@piglatin.mo~ (137.6 KB)
Extracting: E:\boot\grub\locale\en@quot.mo (121.4 KB)
Extracting: E:\boot\grub\locale\en@quot.mo~ (121.4 KB)
Extracting: E:\boot\grub\locale\eo.mo (42.8 KB)
Extracting: E:\boot\grub\locale\eo.mo~ (42.8 KB)
Extracting: E:\boot\grub\locale\es.mo (128.6 KB)
Extracting: E:\boot\grub\locale\es.mo~ (128.6 KB)
Extracting: E:\boot\grub\locale\fi.mo (130.7 KB)
Extracting: E:\boot\grub\locale\fi.mo~ (130.7 KB)
Extracting: E:\boot\grub\locale\fr.mo (138.4 KB)
Extracting: E:\boot\grub\locale\fr.mo~ (138.4 KB)
Extracting: E:\boot\grub\locale\gl.mo (101.5 KB)
Extracting: E:\boot\grub\locale\gl.mo~ (101.5 KB)
Extracting: E:\boot\grub\locale\hr.mo (128.5 KB)
Extracting: E:\boot\grub\locale\hr.mo~ (128.5 KB)
Extracting: E:\boot\grub\locale\hu.mo (129.5 KB)
Extracting: E:\boot\grub\locale\hu.mo~ (129.5 KB)
Extracting: E:\boot\grub\locale\id.mo (28.0 KB)
Extracting: E:\boot\grub\locale\id.mo~ (28.0 KB)
Extracting: E:\boot\grub\locale\it.mo (115.4 KB)
Extracting: E:\boot\grub\locale\it.mo~ (115.4 KB)
Extracting: E:\boot\grub\locale\ja.mo (44.9 KB)
Extracting: E:\boot\grub\locale\ja.mo~ (44.9 KB)
Extracting: E:\boot\grub\locale\ko.mo (50.2 KB)
Extracting: E:\boot\grub\locale\ko.mo~ (50.2 KB)
Extracting: E:\boot\grub\locale\lg.mo (8.2 KB)
Extracting: E:\boot\grub\locale\lg.mo~ (8.2 KB)
Extracting: E:\boot\grub\locale\lt.mo (99.5 KB)
Extracting: E:\boot\grub\locale\lt.mo~ (99.5 KB)
Extracting: E:\boot\grub\locale\nb.mo (120.4 KB)
Extracting: E:\boot\grub\locale\nb.mo~ (120.4 KB)
Extracting: E:\boot\grub\locale\nl.mo (125.2 KB)
Extracting: E:\boot\grub\locale\nl.mo~ (125.2 KB)
Extracting: E:\boot\grub\locale\pa.mo (60.6 KB)
Extracting: E:\boot\grub\locale\pa.mo~ (60.6 KB)
Extracting: E:\boot\grub\locale\pl.mo (131.5 KB)
Extracting: E:\boot\grub\locale\pl.mo~ (131.5 KB)
Extracting: E:\boot\grub\locale\pt.mo (130 KB)
Extracting: E:\boot\grub\locale\pt.mo~ (130 KB)
Extracting: E:\boot\grub\locale\pt_BR.mo (81.8 KB)
Extracting: E:\boot\grub\locale\pt_BR.mo~ (81.8 KB)
Extracting: E:\boot\grub\locale\ro.mo (47.3 KB)
Extracting: E:\boot\grub\locale\ro.mo~ (47.3 KB)
Extracting: E:\boot\grub\locale\ru.mo (168 KB)
Extracting: E:\boot\grub\locale\ru.mo~ (168 KB)
Extracting: E:\boot\grub\locale\sl.mo (92.5 KB)
Extracting: E:\boot\grub\locale\sl.mo~ (92.5 KB)
Extracting: E:\boot\grub\locale\sr.mo (166.3 KB)
Extracting: E:\boot\grub\locale\sr.mo~ (166.3 KB)
Extracting: E:\boot\grub\locale\sv.mo (125.9 KB)
Extracting: E:\boot\grub\locale\sv.mo~ (125.9 KB)
Extracting: E:\boot\grub\locale\tr.mo (82.3 KB)
Extracting: E:\boot\grub\locale\tr.mo~ (82.3 KB)
Extracting: E:\boot\grub\locale\uk.mo (175.3 KB)
Extracting: E:\boot\grub\locale\uk.mo~ (175.3 KB)
Extracting: E:\boot\grub\locale\vi.mo (134.3 KB)
Extracting: E:\boot\grub\locale\vi.mo~ (134.3 KB)
Extracting: E:\boot\grub\locale\zh_CN.mo (85 KB)
Extracting: E:\boot\grub\locale\zh_CN.mo~ (85 KB)
Extracting: E:\boot\grub\locale\zh_TW.mo (30 KB)
Extracting: E:\boot\grub\locale\zh_TW.mo~ (30 KB)
Extracting: E:\boot\grub\themes\starfield\COPYING.CC-BY-SA-3.0 (19.4 KB)
Extracting: E:\boot\grub\themes\starfield\README (1.2 KB)
Extracting: E:\boot\grub\themes\starfield\blob_w.png (836 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_c.png (178 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_e.png (193 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_n.png (103 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_ne.png (193 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_nw.png (184 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_s.png (102 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_se.png (198 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_sw.png (196 bytes)
Extracting: E:\boot\grub\themes\starfield\boot_menu_w.png (96 bytes)
Extracting: E:\boot\grub\themes\starfield\dejavu_10.pf2 (149.6 KB)
Extracting: E:\boot\grub\themes\starfield\dejavu_12.pf2 (165.1 KB)
Extracting: E:\boot\grub\themes\starfield\dejavu_14.pf2 (181.2 KB)
Extracting: E:\boot\grub\themes\starfield\dejavu_16.pf2 (199.2 KB)
Extracting: E:\boot\grub\themes\starfield\dejavu_bold_14.pf2 (188.6 KB)
Extracting: E:\boot\grub\themes\starfield\slider_c.png (197 bytes)
Extracting: E:\boot\grub\themes\starfield\slider_n.png (265 bytes)
Extracting: E:\boot\grub\themes\starfield\slider_s.png (269 bytes)
Extracting: E:\boot\grub\themes\starfield\starfield.png (1.8 MB)
Extracting: E:\boot\grub\themes\starfield\terminal_box_c.png (178 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_e.png (94 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_n.png (194 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_ne.png (128 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_nw.png (210 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_s.png (101 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_se.png (126 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_sw.png (123 bytes)
Extracting: E:\boot\grub\themes\starfield\terminal_box_w.png (97 bytes)
Extracting: E:\boot\grub\themes\starfield\theme.txt (2.2 KB)
Extracting: E:\boot\grub\x86_64-efi\acpi.mod (14.8 KB)
Extracting: E:\boot\grub\x86_64-efi\adler32.mod (1.8 KB)
Extracting: E:\boot\grub\x86_64-efi\affs.mod (7.8 KB)
Extracting: E:\boot\grub\x86_64-efi\afs.mod (8.1 KB)
Extracting: E:\boot\grub\x86_64-efi\afsplitter.mod (2.0 KB)
Extracting: E:\boot\grub\x86_64-efi\ahci.mod (18.6 KB)
Extracting: E:\boot\grub\x86_64-efi\all_video.mod (704 bytes)
Extracting: E:\boot\grub\x86_64-efi\aout.mod (1.3 KB)
Extracting: E:\boot\grub\x86_64-efi\appleldr.mod (5.0 KB)
Extracting: E:\boot\grub\x86_64-efi\archelp.mod (4.3 KB)
Extracting: E:\boot\grub\x86_64-efi\at_keyboard.mod (6.3 KB)
Extracting: E:\boot\grub\x86_64-efi\ata.mod (8.3 KB)
Extracting: E:\boot\grub\x86_64-efi\backtrace.mod (2.4 KB)
Extracting: E:\boot\grub\x86_64-efi\bfs.mod (9.1 KB)
Extracting: E:\boot\grub\x86_64-efi\bitmap.mod (3.0 KB)
Extracting: E:\boot\grub\x86_64-efi\bitmap_scale.mod (5.1 KB)
Extracting: E:\boot\grub\x86_64-efi\blocklist.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\boot.mod (3.6 KB)
Extracting: E:\boot\grub\x86_64-efi\bsd.mod (47 KB)
Extracting: E:\boot\grub\x86_64-efi\bswap_test.mod (2.9 KB)
Extracting: E:\boot\grub\x86_64-efi\btrfs.mod (25.9 KB)
Extracting: E:\boot\grub\x86_64-efi\bufio.mod (2.7 KB)
Extracting: E:\boot\grub\x86_64-efi\cat.mod (4.3 KB)
Extracting: E:\boot\grub\x86_64-efi\cbfs.mod (5.5 KB)
Extracting: E:\boot\grub\x86_64-efi\cbls.mod (5.4 KB)
Extracting: E:\boot\grub\x86_64-efi\cbmemc.mod (3.7 KB)
Extracting: E:\boot\grub\x86_64-efi\cbtable.mod (1.5 KB)
Extracting: E:\boot\grub\x86_64-efi\cbtime.mod (4.3 KB)
Extracting: E:\boot\grub\x86_64-efi\chain.mod (8.4 KB)
Extracting: E:\boot\grub\x86_64-efi\cmdline_cat_test.mod (4.4 KB)
Extracting: E:\boot\grub\x86_64-efi\cmp.mod (2.7 KB)
Extracting: E:\boot\grub\x86_64-efi\cmp_test.mod (5.8 KB)
Extracting: E:\boot\grub\x86_64-efi\command.lst (3.5 KB)
Extracting: E:\boot\grub\x86_64-efi\configfile.mod (3.1 KB)
Extracting: E:\boot\grub\x86_64-efi\cpio.mod (4.2 KB)
Extracting: E:\boot\grub\x86_64-efi\cpio_be.mod (4.2 KB)
Extracting: E:\boot\grub\x86_64-efi\cpuid.mod (2.4 KB)
Extracting: E:\boot\grub\x86_64-efi\crc64.mod (2 KB)
Extracting: E:\boot\grub\x86_64-efi\crypto.lst (936 bytes)
Extracting: E:\boot\grub\x86_64-efi\crypto.mod (6.7 KB)
Extracting: E:\boot\grub\x86_64-efi\cryptodisk.mod (17.7 KB)
Extracting: E:\boot\grub\x86_64-efi\cs5536.mod (3.8 KB)
Extracting: E:\boot\grub\x86_64-efi\ctz_test.mod (2.5 KB)
Extracting: E:\boot\grub\x86_64-efi\date.mod (3 KB)
Extracting: E:\boot\grub\x86_64-efi\datehook.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\datetime.mod (2.9 KB)
Extracting: E:\boot\grub\x86_64-efi\disk.mod (3.0 KB)
Extracting: E:\boot\grub\x86_64-efi\diskfilter.mod (12.8 KB)
Extracting: E:\boot\grub\x86_64-efi\div.mod (1.2 KB)
Extracting: E:\boot\grub\x86_64-efi\div_test.mod (6.6 KB)
Extracting: E:\boot\grub\x86_64-efi\dm_nv.mod (2.7 KB)
Extracting: E:\boot\grub\x86_64-efi\echo.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\efi_gop.mod (12.2 KB)
Extracting: E:\boot\grub\x86_64-efi\efi_uga.mod (6.8 KB)
Extracting: E:\boot\grub\x86_64-efi\efifwsetup.mod (2 KB)
Extracting: E:\boot\grub\x86_64-efi\efinet.mod (6.6 KB)
Extracting: E:\boot\grub\x86_64-efi\ehci.mod (22.0 KB)
Extracting: E:\boot\grub\x86_64-efi\elf.mod (6.0 KB)
Extracting: E:\boot\grub\x86_64-efi\eval.mod (2 KB)
Extracting: E:\boot\grub\x86_64-efi\exfat.mod (8.4 KB)
Extracting: E:\boot\grub\x86_64-efi\exfctest.mod (2 KB)
Extracting: E:\boot\grub\x86_64-efi\ext2.mod (8.4 KB)
Extracting: E:\boot\grub\x86_64-efi\extcmd.mod (7.4 KB)
Extracting: E:\boot\grub\x86_64-efi\f2fs.mod (9.7 KB)
Extracting: E:\boot\grub\x86_64-efi\fat.mod (8.5 KB)
Extracting: E:\boot\grub\x86_64-efi\file.mod (25.3 KB)
Extracting: E:\boot\grub\x86_64-efi\fixvideo.mod (2.7 KB)
Extracting: E:\boot\grub\x86_64-efi\font.mod (18.3 KB)
Extracting: E:\boot\grub\x86_64-efi\fs.lst (219 bytes)
Extracting: E:\boot\grub\x86_64-efi\fshelp.mod (4.3 KB)
Extracting: E:\boot\grub\x86_64-efi\functional_test.mod (45.4 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_arcfour.mod (2.2 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_blowfish.mod (9.1 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_camellia.mod (27.9 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_cast5.mod (14.4 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_crc.mod (11.5 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_des.mod (15.9 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_dsa.mod (3.3 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_idea.mod (3.9 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_md4.mod (3.9 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_md5.mod (4.4 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_rfc2268.mod (3.0 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_rijndael.mod (20.0 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_rmd160.mod (7.6 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_rsa.mod (3.1 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_seed.mod (12.5 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_serpent.mod (16.0 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_sha1.mod (7.7 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_sha256.mod (4.9 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_sha512.mod (5.8 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_tiger.mod (12.8 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_twofish.mod (33.1 KB)
Extracting: E:\boot\grub\x86_64-efi\gcry_whirlpool.mod (22.3 KB)
Extracting: E:\boot\grub\x86_64-efi\geli.mod (9.0 KB)
Extracting: E:\boot\grub\x86_64-efi\gettext.mod (8.1 KB)
Extracting: E:\boot\grub\x86_64-efi\gfxmenu.mod (58.1 KB)
Extracting: E:\boot\grub\x86_64-efi\gfxterm.mod (16.2 KB)
Extracting: E:\boot\grub\x86_64-efi\gfxterm_background.mod (4.2 KB)
Extracting: E:\boot\grub\x86_64-efi\gfxterm_menu.mod (7.4 KB)
Extracting: E:\boot\grub\x86_64-efi\gptsync.mod (5.1 KB)
Extracting: E:\boot\grub\x86_64-efi\gzio.mod (12 KB)
Extracting: E:\boot\grub\x86_64-efi\halt.mod (7.1 KB)
Extracting: E:\boot\grub\x86_64-efi\hashsum.mod (7.9 KB)
Extracting: E:\boot\grub\x86_64-efi\hdparm.mod (10 KB)
Extracting: E:\boot\grub\x86_64-efi\hello.mod (1.7 KB)
Extracting: E:\boot\grub\x86_64-efi\help.mod (3.7 KB)
Extracting: E:\boot\grub\x86_64-efi\hexdump.mod (4.3 KB)
Extracting: E:\boot\grub\x86_64-efi\hfs.mod (9.9 KB)
Extracting: E:\boot\grub\x86_64-efi\hfsplus.mod (10.9 KB)
Extracting: E:\boot\grub\x86_64-efi\hfspluscomp.mod (4.1 KB)
Extracting: E:\boot\grub\x86_64-efi\http.mod (8.5 KB)
Extracting: E:\boot\grub\x86_64-efi\iorw.mod (4.1 KB)
Extracting: E:\boot\grub\x86_64-efi\iso9660.mod (11.8 KB)
Extracting: E:\boot\grub\x86_64-efi\jfs.mod (8.6 KB)
Extracting: E:\boot\grub\x86_64-efi\jpeg.mod (10.1 KB)
Extracting: E:\boot\grub\x86_64-efi\json.mod (4.7 KB)
Extracting: E:\boot\grub\x86_64-efi\keylayouts.mod (6.2 KB)
Extracting: E:\boot\grub\x86_64-efi\keystatus.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\ldm.mod (8 KB)
Extracting: E:\boot\grub\x86_64-efi\legacy_password_test.mod (15.4 KB)
Extracting: E:\boot\grub\x86_64-efi\legacycfg.mod (43.7 KB)
Extracting: E:\boot\grub\x86_64-efi\linux.mod (18.7 KB)
Extracting: E:\boot\grub\x86_64-efi\linux16.mod (8.3 KB)
Extracting: E:\boot\grub\x86_64-efi\loadbios.mod (4.4 KB)
Extracting: E:\boot\grub\x86_64-efi\loadenv.mod (8.8 KB)
Extracting: E:\boot\grub\x86_64-efi\loopback.mod (4.6 KB)
Extracting: E:\boot\grub\x86_64-efi\ls.mod (6.2 KB)
Extracting: E:\boot\grub\x86_64-efi\lsacpi.mod (6.8 KB)
Extracting: E:\boot\grub\x86_64-efi\lsefi.mod (5.1 KB)
Extracting: E:\boot\grub\x86_64-efi\lsefimmap.mod (3.5 KB)
Extracting: E:\boot\grub\x86_64-efi\lsefisystab.mod (4.2 KB)
Extracting: E:\boot\grub\x86_64-efi\lsmmap.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\lspci.mod (6.9 KB)
Extracting: E:\boot\grub\x86_64-efi\lssal.mod (3.6 KB)
Extracting: E:\boot\grub\x86_64-efi\luks.mod (6.3 KB)
Extracting: E:\boot\grub\x86_64-efi\luks2.mod (20.1 KB)
Extracting: E:\boot\grub\x86_64-efi\lvm.mod (11.5 KB)
Extracting: E:\boot\grub\x86_64-efi\lzopio.mod (6.6 KB)
Extracting: E:\boot\grub\x86_64-efi\macbless.mod (4.6 KB)
Extracting: E:\boot\grub\x86_64-efi\macho.mod (10.4 KB)
Extracting: E:\boot\grub\x86_64-efi\mdraid09.mod (2.6 KB)
Extracting: E:\boot\grub\x86_64-efi\mdraid09_be.mod (2.6 KB)
Extracting: E:\boot\grub\x86_64-efi\mdraid1x.mod (2.5 KB)
Extracting: E:\boot\grub\x86_64-efi\memdisk.mod (3.0 KB)
Extracting: E:\boot\grub\x86_64-efi\memrw.mod (4.1 KB)
Extracting: E:\boot\grub\x86_64-efi\minicmd.mod (5.6 KB)
Extracting: E:\boot\grub\x86_64-efi\minix.mod (5.4 KB)
Extracting: E:\boot\grub\x86_64-efi\minix2.mod (5.5 KB)
Extracting: E:\boot\grub\x86_64-efi\minix2_be.mod (5.6 KB)
Extracting: E:\boot\grub\x86_64-efi\minix3.mod (5.5 KB)
Extracting: E:\boot\grub\x86_64-efi\minix3_be.mod (5.6 KB)
Extracting: E:\boot\grub\x86_64-efi\minix_be.mod (5.5 KB)
Extracting: E:\boot\grub\x86_64-efi\mmap.mod (9.1 KB)
Extracting: E:\boot\grub\x86_64-efi\moddep.lst (5.1 KB)
Extracting: E:\boot\grub\x86_64-efi\modinfo.sh (2.5 KB)
Extracting: E:\boot\grub\x86_64-efi\morse.mod (3.1 KB)
Extracting: E:\boot\grub\x86_64-efi\mpi.mod (42.4 KB)
Extracting: E:\boot\grub\x86_64-efi\msdospart.mod (3.5 KB)
Extracting: E:\boot\grub\x86_64-efi\mul_test.mod (2.3 KB)
Extracting: E:\boot\grub\x86_64-efi\multiboot.mod (20.4 KB)
Extracting: E:\boot\grub\x86_64-efi\multiboot2.mod (23.3 KB)
Extracting: E:\boot\grub\x86_64-efi\nativedisk.mod (6.5 KB)
Extracting: E:\boot\grub\x86_64-efi\net.mod (77.5 KB)
Extracting: E:\boot\grub\x86_64-efi\newc.mod (4.3 KB)
Extracting: E:\boot\grub\x86_64-efi\nilfs2.mod (9.6 KB)
Extracting: E:\boot\grub\x86_64-efi\normal.mod (171.0 KB)
Extracting: E:\boot\grub\x86_64-efi\ntfs.mod (14.7 KB)
Extracting: E:\boot\grub\x86_64-efi\ntfscomp.mod (5.5 KB)
Extracting: E:\boot\grub\x86_64-efi\odc.mod (4.2 KB)
Extracting: E:\boot\grub\x86_64-efi\offsetio.mod (2.1 KB)
Extracting: E:\boot\grub\x86_64-efi\ohci.mod (14 KB)
Extracting: E:\boot\grub\x86_64-efi\part_acorn.mod (2.2 KB)
Extracting: E:\boot\grub\x86_64-efi\part_amiga.mod (2.5 KB)
Extracting: E:\boot\grub\x86_64-efi\part_apple.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\part_bsd.mod (4.0 KB)
Extracting: E:\boot\grub\x86_64-efi\part_dfly.mod (2.5 KB)
Extracting: E:\boot\grub\x86_64-efi\part_dvh.mod (2 KB)
Extracting: E:\boot\grub\x86_64-efi\part_gpt.mod (3.1 KB)
Extracting: E:\boot\grub\x86_64-efi\part_msdos.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\part_plan.mod (2.4 KB)
Extracting: E:\boot\grub\x86_64-efi\part_sun.mod (2.1 KB)
Extracting: E:\boot\grub\x86_64-efi\part_sunpc.mod (2.4 KB)
Extracting: E:\boot\grub\x86_64-efi\partmap.lst (111 bytes)
Extracting: E:\boot\grub\x86_64-efi\parttool.lst (17 bytes)
Extracting: E:\boot\grub\x86_64-efi\parttool.mod (7 KB)
Extracting: E:\boot\grub\x86_64-efi\password.mod (2.8 KB)
Extracting: E:\boot\grub\x86_64-efi\password_pbkdf2.mod (4.3 KB)
Extracting: E:\boot\grub\x86_64-efi\pata.mod (7.3 KB)
Extracting: E:\boot\grub\x86_64-efi\pbkdf2.mod (1.8 KB)
Extracting: E:\boot\grub\x86_64-efi\pbkdf2_test.mod (3.3 KB)
Extracting: E:\boot\grub\x86_64-efi\pcidump.mod (3.4 KB)
Extracting: E:\boot\grub\x86_64-efi\pgp.mod (18.1 KB)
Extracting: E:\boot\grub\x86_64-efi\play.mod (3.8 KB)
Extracting: E:\boot\grub\x86_64-efi\png.mod (10.3 KB)
Extracting: E:\boot\grub\x86_64-efi\priority_queue.mod (2.1 KB)
Extracting: E:\boot\grub\x86_64-efi\probe.mod (5.4 KB)
Extracting: E:\boot\grub\x86_64-efi\procfs.mod (3.6 KB)
Extracting: E:\boot\grub\x86_64-efi\progress.mod (2.9 KB)
Extracting: E:\boot\grub\x86_64-efi\raid5rec.mod (1.8 KB)
Extracting: E:\boot\grub\x86_64-efi\raid6rec.mod (3.2 KB)
Extracting: E:\boot\grub\x86_64-efi\random.mod (3.5 KB)
Extracting: E:\boot\grub\x86_64-efi\rdmsr.mod (2.9 KB)
Extracting: E:\boot\grub\x86_64-efi\read.mod (2.1 KB)
Extracting: E:\boot\grub\x86_64-efi\reboot.mod (1.5 KB)
Extracting: E:\boot\grub\x86_64-efi\regexp.mod (75.7 KB)
Extracting: E:\boot\grub\x86_64-efi\reiserfs.mod (13.3 KB)
Extracting: E:\boot\grub\x86_64-efi\relocator.mod (25.7 KB)
Extracting: E:\boot\grub\x86_64-efi\romfs.mod (5.5 KB)
Extracting: E:\boot\grub\x86_64-efi\scsi.mod (6.6 KB)
Extracting: E:\boot\grub\x86_64-efi\search.mod (5.2 KB)
Extracting: E:\boot\grub\x86_64-efi\search_fs_file.mod (4.5 KB)
Extracting: E:\boot\grub\x86_64-efi\search_fs_uuid.mod (4.6 KB)
Extracting: E:\boot\grub\x86_64-efi\search_label.mod (4.6 KB)
Extracting: E:\boot\grub\x86_64-efi\serial.mod (14.1 KB)
Extracting: E:\boot\grub\x86_64-efi\setjmp.mod (912 bytes)
Extracting: E:\boot\grub\x86_64-efi\setjmp_test.mod (2.5 KB)
Extracting: E:\boot\grub\x86_64-efi\setpci.mod (8 KB)
Extracting: E:\boot\grub\x86_64-efi\sfs.mod (7.5 KB)
Extracting: E:\boot\grub\x86_64-efi\shift_test.mod (2.9 KB)
Extracting: E:\boot\grub\x86_64-efi\signature_test.mod (8.0 KB)
Extracting: E:\boot\grub\x86_64-efi\sleep.mod (3.2 KB)
Extracting: E:\boot\grub\x86_64-efi\sleep_test.mod (2.9 KB)
Extracting: E:\boot\grub\x86_64-efi\smbios.mod (8.2 KB)
Extracting: E:\boot\grub\x86_64-efi\spkmodem.mod (2.9 KB)
Extracting: E:\boot\grub\x86_64-efi\squash4.mod (9.6 KB)
Extracting: E:\boot\grub\x86_64-efi\strtoull_test.mod (3 KB)
Extracting: E:\boot\grub\x86_64-efi\syslinuxcfg.mod (28.8 KB)
Extracting: E:\boot\grub\x86_64-efi\tar.mod (4.7 KB)
Extracting: E:\boot\grub\x86_64-efi\terminal.lst (162 bytes)
Extracting: E:\boot\grub\x86_64-efi\terminal.mod (6.5 KB)
Extracting: E:\boot\grub\x86_64-efi\terminfo.mod (18.6 KB)
Extracting: E:\boot\grub\x86_64-efi\test.mod (7.2 KB)
Extracting: E:\boot\grub\x86_64-efi\test_blockarg.mod (1.9 KB)
Extracting: E:\boot\grub\x86_64-efi\testload.mod (3.7 KB)
Extracting: E:\boot\grub\x86_64-efi\testspeed.mod (3.3 KB)
Extracting: E:\boot\grub\x86_64-efi\tftp.mod (7.0 KB)
Extracting: E:\boot\grub\x86_64-efi\tga.mod (5.5 KB)
Extracting: E:\boot\grub\x86_64-efi\time.mod (2.2 KB)
Extracting: E:\boot\grub\x86_64-efi\tpm.mod (6.1 KB)
Extracting: E:\boot\grub\x86_64-efi\tr.mod (3.5 KB)
Extracting: E:\boot\grub\x86_64-efi\trig.mod (1.9 KB)
Extracting: E:\boot\grub\x86_64-efi\true.mod (1.8 KB)
Extracting: E:\boot\grub\x86_64-efi\udf.mod (11.8 KB)
Extracting: E:\boot\grub\x86_64-efi\ufs1.mod (7.6 KB)
Extracting: E:\boot\grub\x86_64-efi\ufs1_be.mod (7.7 KB)
Extracting: E:\boot\grub\x86_64-efi\ufs2.mod (7.6 KB)
Extracting: E:\boot\grub\x86_64-efi\uhci.mod (9.4 KB)
Extracting: E:\boot\grub\x86_64-efi\usb.mod (15.1 KB)
Extracting: E:\boot\grub\x86_64-efi\usb_keyboard.mod (5.6 KB)
Extracting: E:\boot\grub\x86_64-efi\usbms.mod (10 KB)
Extracting: E:\boot\grub\x86_64-efi\usbserial_common.mod (2.7 KB)
Extracting: E:\boot\grub\x86_64-efi\usbserial_ftdi.mod (3.3 KB)
Extracting: E:\boot\grub\x86_64-efi\usbserial_pl2303.mod (3.6 KB)
Extracting: E:\boot\grub\x86_64-efi\usbserial_usbdebug.mod (2.2 KB)
Extracting: E:\boot\grub\x86_64-efi\usbtest.mod (5.4 KB)
Extracting: E:\boot\grub\x86_64-efi\video.lst (41 bytes)
Extracting: E:\boot\grub\x86_64-efi\video.mod (8.6 KB)
Extracting: E:\boot\grub\x86_64-efi\video_bochs.mod (8.1 KB)
Extracting: E:\boot\grub\x86_64-efi\video_cirrus.mod (8.6 KB)
Extracting: E:\boot\grub\x86_64-efi\video_colors.mod (9.7 KB)
Extracting: E:\boot\grub\x86_64-efi\video_fb.mod (27.4 KB)
Extracting: E:\boot\grub\x86_64-efi\videoinfo.mod (5.1 KB)
Extracting: E:\boot\grub\x86_64-efi\videotest.mod (5.3 KB)
Extracting: E:\boot\grub\x86_64-efi\videotest_checksum.mod (3.5 KB)
Extracting: E:\boot\grub\x86_64-efi\wrmsr.mod (2.3 KB)
Extracting: E:\boot\grub\x86_64-efi\xfs.mod (10.0 KB)
Extracting: E:\boot\grub\x86_64-efi\xnu.mod (40.9 KB)
Extracting: E:\boot\grub\x86_64-efi\xnu_uuid.mod (3.1 KB)
Extracting: E:\boot\grub\x86_64-efi\xnu_uuid_test.mod (3.0 KB)
Extracting: E:\boot\grub\x86_64-efi\xzio.mod (19.1 KB)
Extracting: E:\boot\grub\x86_64-efi\zfs.mod (55.5 KB)
Extracting: E:\boot\grub\x86_64-efi\zfscrypt.mod (8.2 KB)
Extracting: E:\boot\grub\x86_64-efi\zfsinfo.mod (10.3 KB)
Extracting: E:\boot\grub\x86_64-efi\zstd.mod (77.2 KB)
Extracting: E:\boot.catalog (2 KB)
Extracting: E:\efi.img (2.8 MB)
Extracting: E:\image.squashfs (390.3 MB)
Extracting: E:\livecd (0 bytes)
Extracting: E:\mach_kernel (0 bytes)
Extracting: E:\EFI\BOOT\BOOT.EFI (from '/efi.img', 112 KB)
Extracting: E:\EFI\BOOT\BOOTIA32.EFI (from '/efi.img', 112 KB)
Extracting: E:\EFI\BOOT\BOOTX64.EFI (from '/efi.img', 144 KB)
Finalizing, please wait...
Created: E:autorun.inf
Created: E:autorun.ico

Found USB 3.0 device ' USB  SanDisk 3.2Gen1 USB Device' (0781:5591)
Using 'autorun.inf' label for drive E: 'ISOIMAGE'
1 device found
Disk type: Removable, Disk size: 64 GB, Sector size: 512 bytes
Cylinders: 7480, Tracks per cylinder: 255, Sectors per track: 63
Partition type: MBR, NB Partitions: 1
Disk ID: 0x001C76AE
Drive has a Grub 2.0 Master Boot Record
Partition 1:
  Type: FAT32 LBA (0x0c)
  Detected File System: FAT32
  Size: 57.3 GB (61529391104 bytes)
  Start Sector: 2048, Boot: Yes

@pbatard
Copy link
Owner

pbatard commented Jan 3, 2023

Hi Ben,

First of all, let me start by saying that I always appreciate when distro maintainers report breakage, because we really all want the same thing here: Ensure that users can always create bootable media from a distro with a utility they are comfortable with, and therefore resolve any issue that is found during the media creation process.

I certainly want people to continue to be able to use Rufus to install Gentoo too!

Now we are calling grub-mkrescue to build the ISO

Then you want to apply this patch series that I sent to the GRUB mailing list (Add support for EFI file system transposition), because I believe that this is your issue.

For what is worth, this is something that I have been trying to pre-empt with the GRUB folks ever since I became aware of the problem early last year (and as a matter of fact, the series I am linking to is a re-sent of the same series I submitted quite a few month earlier), and that took quite a lot of convincing to get the GRUB folks to consider integrating.

Hopefully, you can apply this patchset to your source tree and that will solve your issue.

I also have some notes on how to test this without having to generate a full blow distribution ISO, that I jolted down for the GRUB maintainers.

If that does help solve your issue, please don't hesitate to spread the word that EFI File System Transposition is a crucial means of creating UEFI bootable media for users (since it can make Rufus or external utilities including dd entirely redundant), especially in a world where trying to enforce dd with ISOHybrid does leave Windows users stranded (see the many examples in my cover letter for the series), and needs to be considered as a viable alternative that should be tested always by distro maintainers (which apparently you are doing, so props to Gentoo for doing that!).

@benkohler
Copy link
Author

Thanks for the quick followup! I'm going to apply the grub patches and do a test build, I'll let you know the result and if it's success then I'll talk to our grub maintainer about taking up the patches until upstream does.

As I started reading your patch description, it all started to sound very familiar... then I remembered that a few years ago, I added similar logic to our ISO build system for rufus/unetbootin compatibility (forgive me if I got any technical details or terminology wrong):
gentoo/catalyst@8a70e1e

When we moved to using grub-mkrescue, it greatly simplified our ISO generation, BUT we lost that logic to duplicate /boot/efi contents! So it makes sense that now grub-mkrescue needs to handle that, I'm really surprised it doesn't already.

@pbatard
Copy link
Owner

pbatard commented Jan 3, 2023

Well, the GRUB patchset should take care of ensuring that /efi/boot/ is populated with the UEFI bootloaders, so, yes, that is one of the elements that you need to take care of to ensure File System Transposition support.

Basically, and this is what I mention in the patchset, you want your boot process to honour the 3 following requirements:

  • Your boot process should support content residing on a FAT file systems (rather than just ISO9660/UDF or some non UEFI mandated file system). Bonus if you also support NTFS, which has become to be enabled by most manufacturer on newer UEFI firmwares (at least for x86_64) to alleviate the issue of >4GB files, such as large squashfs images and such. Not that this means that, besides the GRUB patches, you may still have to sort out your initrd or equivalent to properly support said filesystem(s).
  • The file system for your image (ISO9660 or UDF) should should include UEFI bootloaders at the location that is mandated by the UEFI specs for disk boot (/efi/boot/), regardless of whether (as is the case with xorriso generated media) you may be able to "shove" them into a monolithic efi.img that'll translate to a separate ESP when using dd. This part will be automatically sorted out for you if using the GRUB patchset.
  • Your boot process should not be dependent on locating the boot media by volume label, as, in its intended form, UEFI File System Transposition should be achievable to extracting the ISO content to a FAT or NTFS volume created by the user that may have any label they choose... or no label at all. Now, the only thing the GRUB patchset guarantees is that this will be the case for GRUB, but once you have booted the kernel, it is the job of the distro maintainers to make sure that they can locate the media without relying on a label. I have to point out however that, for people using Rufus, this is not an issue, as Rufus tries to sort out label handling for the user (as well as label issues that arise from the FAT limitations of forcing uppercase and no more than 11 characters, whereas ISO9660/UDF allow long labels in mixed case), which is why most distros that do rely on seek-by-label should still work. I would encourage you however to take a note from Debian if needed, who have swicthed to seek-by-content (see here) by looking up a .disk/info file (which I have to say isn't a terribly unique way of identifying content, and which is part of the reason why I went with a `.disk/ file in the GRUB patch proposal).

If you can honour the 3 requirements above, then, no matter the OS, users who are trying to create a disk-based boot media from your ISO should be able to do so on UEFI systems without using anything but the native tools that are guaranteed to be present on their OS (where, when you do consider Windows users, dd is not even a guarantee).

@benkohler
Copy link
Author

With your grub patches, I do now see /efi/boot/ populated on the resulting ISO and on the USB drive created by rufus, but it still fails to boot, with the same grub errors. I do see one difference though, I am now able to "ls (hd0,msdos1)/" from the grub rescue shell and read the files on the usb stick-- so the minimal grub image has fat support now.

And now with a few grub commands, I can get it booting:

set root=(hd0,msdos1)
set prefix=/boot/grub
insmod normal
normal

This gets me to the expected grub menu where I can select a Gentoo kernel and boot successfully.

Any idea where the missing piece is now?

I have a copy of the new ISO (built with your grub patches) here: https://drive.google.com/file/d/15xIiuqVgIz9puKA-qeV4j_JHsgBDNVBV/view?usp=share_link

@benkohler
Copy link
Author

I'm a bit confused about something else as well. Before grub-mkrescue was populating /efi/boot, it was still starting grub in EFI mode, but from where, if the ISO embedded boot images are gone? I do see what appears to be a grub image at /System/Library/CoreServices/boot.efi, is that where it was loading from?

Since your patches, I notice that partciular grub image has increased in size. Before it was 257KB, now it is 297KB.

@pbatard
Copy link
Owner

pbatard commented Jan 4, 2023

The .disk/ directory is missing from your image. So, yeah, you're going to have trouble booting because the search for the bootable device will fail.

I'm not sure why that is the case because, the way I patched util/grub-mkrescue.c's main() is that, as soon as you have a EFI source dir (if (source_dirs[GRUB_INSTALL_PLATFORM_###_EFI]) ...) you should get a .disk/YYYY-DD-MM-HH-MM-SS-00.uuid file created and added to the generated ISO, and it shouldn't matter if you also have BIOS content there since it's a plain if and not an else if.

Can you please first validate that the patchset has been properly applied, and that you do have the following lines in your util/grub-mkrescue.c:

      /* Create a '.disk/<TIMEBASED_UUID>.uuid' file that can be used to locate the boot media. */
      diskdir = grub_util_path_concat (2, iso9660_dir, ".disk");
      grub_install_mkdir_p (diskdir);
      iso_uuid_file = xasprintf ("%s.uuid", iso_uuid);
      diskdir_uuid = grub_util_path_concat (2, diskdir, iso_uuid_file);
      f = grub_util_fopen (diskdir_uuid, "wb");
      fclose (f);

Also be very mindful that, unless you ran grub install, you may still invoke your system's default unpatched binaries, which, even if you do invoke the newly built grub-mkrescue could also explain why you are experiencing the issue.

I suggest that you follow the steps I described from https://gist.github.com/pbatard/0deddbd71eefc35a3ed0b08e12a9e7e3 to validate that you can generate a minimal super grub disk image that includes the .disk/ content (NB: It shouldn't matter if you use --with-platform=efi --target=amd64-pe for configure as long as GRUB can autodetect an EFI platform). Then, once you have that, maybe add a printf() statement in the line I highlighted above and try to generate your ISO, to validate that the code that does setup the .disk/ directory does get invoked.

but from where, if the ISO embedded boot images are gone?

The embedded boot image is not gone. The patchset duplicates the /efi/boot/ content from the image onto the ISO9660 file system. Ideally, it should be xorriso's job to do that, or place the binaries in a fashion that avoids duplication (which I guess could be achieved by enforcing a FAT cluster size of 2048 for the image, since that's the also the block size for ISO9660 and with some trickery, it should be possible to have a FAT table as well as an ISO9660 index pointing to the same sectors), but considering the urgency of having a working solution, and how losing a few MB on a ISO that is most likely to be around 500 MB or larger is hardly an issue, duplicating is what we are going with for now.

I notice that partciular grub image has increased in size. Before it was 257KB, now it is 297KB.

I do mention that in my notes. We're adding extra file system and partition modules, so, yeah, this will come as an extra few KB (and since we are using the same bootloaders on the ISO fs as the one from the image, this will increase the image size). There really was no point trying to devise a solution where the (ISOHybrid-as-dd-disk-boot) image and (File-system-transposed-disk-boot) ISO9660 bootloaders would be tailored for one specific role, with removal of the parts that only applied for the other role. Better to create GRUB bootloaders that fit both roles, and avoid having to indentify weird issues down the line of "It boots when I use dd, but not when I file transpose" that boil down to a different bootx64.efi being used.

@benkohler
Copy link
Author

Aha, thanks for catching that. I had to mangle the patches a bit after copy/pasting from the ML archive and somehow that one chunk of patch 3 was not being applied (not erroring either).

I manually re-rolled that patch, verified that the "/* Create a '.disk/<TIMEBASED_UUID>.uuid' file.." code block exists now, and have rebuilt grub. Sure enough, the next ISO created with grub-mkrescue and passed on to rufus, boots perfectly.

I believe we can close this issue out unless you want to use it as reference until the patches (hopefully) land upstream at grub.

@pbatard
Copy link
Owner

pbatard commented Jan 4, 2023

Happy to hear that you sorted it out. I'm going to close the issue, since people who do a search should be able to locate it, and, considering how far and in between GRUB releases are (which, sadly, forces distro maintainers to perform a lot of unwarranted extra work), I wouldn't actually bet my life on the next GRUB release being sure to happen within the next 12 months...

@pbatard pbatard closed this as completed Jan 4, 2023
@github-actions
Copy link

github-actions bot commented Apr 5, 2023

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue if you think you have a related problem or query.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Apr 5, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants